【发布时间】:2010-10-20 08:57:56
【问题描述】:
如何打开嵌入在资源文件中的文件,例如硬盘上的文件(具有绝对路径)?
【问题讨论】:
-
开放是什么意思?你的意思是加载二进制内容?
-
这有点令人困惑。您是在谈论访问嵌入式资源还是硬盘上的资源?
如何打开嵌入在资源文件中的文件,例如硬盘上的文件(具有绝对路径)?
【问题讨论】:
假设您将test.xml 文件嵌入到程序集中。您可以使用GetManifestResourceStream 方法获取指向内容的流:
class Program
{
static void Main()
{
var assembly = Assembly.GetExecutingAssembly();
using (var stream = assembly.GetManifestResourceStream("ProjectName.test.xml"))
using (var reader = new StreamReader(stream))
{
Console.WriteLine(reader.ReadToEnd());
}
}
}
这样文件的内容被读入内存。您也可以将其存储到硬盘,然后通过绝对路径访问,但这可能不是必需的,因为您已经拥有文件的内容。
【讨论】: