如何在.NET程序集中embedded文本文件?

我想在一个程序集中embedded一个文本文件,这样我就可以加载文本而不必从磁盘读取文件,这样我需要的所有东西都包含在exe文件中。 (所以它更便携)

有没有办法做到这一点? 我假设资源文件的东西?

如果可以的话,你是怎么做到的,你怎样把程序加载到一个string中?

用鼠标右键单击项目文件,select属性。

在打开的窗口中,转到资源选项卡,如果它在标签页中间只有一个蓝色链接,点击它,创build一个新的资源。

在这里输入图像描述

然后从标签页上方的工具栏中select添加一个新的文本文件,给它一个名称,它将被添加到您的项目,并打开。

如果你得到这个,那么在你的代码中你可以inputResources.TheNameYouGaveTheTextFileHere,你可以访问它的内容。 注意,当你第一次在类中使用Resources类的时候,你需要添加一个using指令(在键入Resources之后点击Ctrl +来获取菜单来让VS为你做)。

如果上面的描述有些不清楚,请留下评论,我会编辑它,直到它完成或有意义:)

在Visual Studio 2003,Visual Studio 2005以及可能更早的版本(2008年也可以)中,您可以将文本文件包含在项目中,然后在“属性”面板中将操作设置为“embedded式资源”。 然后,您可以使用Assembly.GetManifestResourceStream(string)作为stream访问该文件。

这里的其他答案更方便。 我包括这个完整性。

请注意,这种方法将适用于embedded其他types的文件,如图像,图标,声音等…

embedded文本文件后,使用该文件中的任何地方像这样的代码…

 global::packageName.Properties.Resources.ThatFileName 

是的,你是正确的 – 创build一个资源文件。 当你这样做,你不需要“加载”string,它会被引用为Resource.WhateverStringYouDefined。