在C# Calss Library 项目读取项目文件夹的文件方法:
比如要读取这个文件里的内容:

方法如下:
1. 首先要把这个文件的属性改一下, 选择这个文件,点右键,选择属性:

然后把文件类型改为嵌入式资源:

然后用下面的代码就可以取得文件了:
System.Reflection.Assembly asmb = System.Reflection.Assembly.GetExecutingAssembly();
var embeddedFileNames = asmb.GetManifestResourceNames();
var errorJsonFile = embeddedFileNames.FirstOrDefault(x => x.EndsWith("ErrorMessages.json"));
取得文件后可以用下面的方法获取文件里面的内容:
public static string GetEmbeddedContent(System.Reflection.Assembly asmb, string fileName)
{
System.IO.Stream ManifestStream = asmb.GetManifestResourceStream(fileName);
byte[] streamData = new byte[ManifestStream.Length];
ManifestStream.Read(streamData, 0, (int)ManifestStream.Length);
return System.Text.Encoding.UTF8.GetString(streamData).Trim();
}
将文件设置为嵌入式资源后,可以通过Assembly.GetExecutingAssembly()获取程序集,使用GetManifestResourceNames查找文件名,然后用GetManifestResourceStream读取文件内容,用UTF8编码转换为字符串。
948





