将文件添加到项目中,该文件将添加到exe中,并且可以在运行时访问

时间:2009-08-17 11:16:46

标签: c#

我有一个文件(xml),在我的代码中访问,我希望它是一些如何添加到可执行文件中,所以我的实用程序可以在运行时访问它,但仍然是一个文件。有没有办法做到这一点? (C#) 谢谢。

3 个答案:

答案 0 :(得分:2)

请看embedded resources(谷歌搜索的第一个结果,但乍看之下看起来不错)


实际上this article的优势在于实际上告诉您如何制作嵌入式资源。在他们两个之间你应该能够解决你的问题。

答案 1 :(得分:2)

将其添加为嵌入式资源(将文件的构建操作设置为“嵌入式资源”)并使用Assembly.GetManifestResourceStream访问它。

请注意,访问资源流时,名称区分大小写。

答案 2 :(得分:2)

在属性窗口中,将属性Build Action设置为嵌入式资源

之后,您可以像这样访问您的文件:

Assembly assbl = Assembly.GetAssembly(this.GetType());
using(Stream s = assbl.GetManifestResourceStream("projectnamespace.embeddedfilename.xml"))
{
    XmlDocument doc = new XmlDocument();
    using (StreamReader reader = new StreamReader(s))
    {
        doc.LoadXml(reader.ReadToEnd());
        reader.Close();
    }
}

在GetManifestResourceStream中,您需要在项目中指定文件的“路径”。