资源文件可以包含字符串,图片,使用资源一个最大的好处就是便于管理,打个比方,如果我们将所以字符串信息都放在一个资源文件中,以后要修改其中某个值,我们只需要修改这个资源文件,而不必查看C#代码,而且用Visual Stdio.Net 很容易把资源加入到项目中。
一 创建资源文件
创建一个控制台项目Resource1,利用System.Resources名字空间下的ResourceWriter类,我们可以创建一个资源,并向其写入内容。以下只是简单的示例,详细请查看MSDN
using System;
using System.Resources;
namespace test {
class ResourcesExample
{
public static void Main()
{
ResourceWriter rw = new ResourceWriter("My.resources");
rw.AddResource("MyStr", "从资源文件中读取字符串!");
rw.Generate();
rw.Close();
}
}
}
二 使用资源文件
using System;
using System.Resources;
using System.Reflection;
namespace test {
class ResourcesExample
{
public static void Main()
{
ResourceManager rm = new ResourceManager("Resource1.My", Assembly.GetExecutingAssembly());
string str = rm.GetString("MyStr");
Console.WriteLine(str);
Console.ReadLine();
}
}
}
这里要注意的是ResourceManager这个构造函数,如果第一个参数设置不正确,会出错,我一开始设置成“My”,老是提示找不到这个资源文件,后来通过ildasm查看汇编代码,才知道路径不对。