2012-08-09 223 views

回答

6

您可以使用Assembly.GetManifestResourceStream(resource_name_of_the_file)访问该文件的流,将其写入到TEMP目录,并使用此路径。

例如,如果你在路径“资源\文件\ FILE.TXT”在你的项目中的文件和项目的组件默认命名空间是“RootNamespace”,你可以从内部访问文件的流这个程序集的代码与

Assembly.GetExecutingAssembly().GetManifestResourceStream("RootNamespace.Resources.Files.File.txt") 
+0

经过许多小时的搜索,我可以确认这是唯一的方法(afaik)。 – 2016-01-29 14:19:55

5

是否有任何方法可以获取对嵌入文本文件的字符串引用,以便它可以用作打开StreamReader的文件路径?

不,嵌入式资源不是单独的文件,而是嵌入到可执行文件中。但是,您可以使用StreamReader获取您可以读取的流。

var name = "..."; 
using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name)) 
    using (var streamReader = new StreamReader(stream)) { 
    // Read the embedded file ... 
    } 
相关问题