在.Net中使用资源文件
2006-04-15 16:36
246 查看
在FxCop中建议代码中出现的某些字符串,比如Exception.Message这类的字符串不要直接写进代码中,而使用RescourceManager从资源文件中读取,这样做可以方便实现本地化。昨天花了好长时间,终于搞清楚应该怎么从资源文件中读值了。以下是记录。
首先,我们要有一个资源文件,就是.resx。创建的方法可以右击项目,选择添加新项,然后在资源文件夹中选 “程序集资源文件”,Ok。我们就得到一次资源文件了。在Vs中打开它可以很方便的进行编辑,其中比较重要的是name和value字段。它们的作用,不用我说,大家都知道了吧。
接下来就是重点了,使用RescourceManager从资源文件中读取值。以下是读取的关键的几句:
1 ResourceManager rm = new ResourceManager( "Lupin.vClass.Runtime.StringTable", Assembly.GetExecutingAssembly());
2 CultureInfo ci = Thread.CurrentThread.CurrentCulture;
3 string str = rm.GetString( name, ci );
重点在第一行中"Lupin.vClass.Runtime.StringTable", 还有 Assembly.GetExecuteingAssembly()。在这里,Lupin.vClass.Runtime是资源文件所在的项目的默认命名空间,最后一个单词StringTable就是文件名了。后面,Assembly.GetExecutingAssembly()的作用是取得当前正在执行的程序集,在这里的意义是资源文件所在的程序集。如果你读取的是其它程序集的资源文件,相应的这个要作改变。
后面,CultureInfo是本地信息,把它作为参数传递给GetString,程序能自动从相应的文件中读取值。比如用户的默认语言中是zh-cn,那么,程序在读取的时候会读取StringTable.zh-cn.resx中读取,相应的en-us的话,就会读取StringTable.en-us.resx,如果不传CultureInfo进去的话,那就是StringTable.resx了。
首先,我们要有一个资源文件,就是.resx。创建的方法可以右击项目,选择添加新项,然后在资源文件夹中选 “程序集资源文件”,Ok。我们就得到一次资源文件了。在Vs中打开它可以很方便的进行编辑,其中比较重要的是name和value字段。它们的作用,不用我说,大家都知道了吧。
接下来就是重点了,使用RescourceManager从资源文件中读取值。以下是读取的关键的几句:
1 ResourceManager rm = new ResourceManager( "Lupin.vClass.Runtime.StringTable", Assembly.GetExecutingAssembly());
2 CultureInfo ci = Thread.CurrentThread.CurrentCulture;
3 string str = rm.GetString( name, ci );
重点在第一行中"Lupin.vClass.Runtime.StringTable", 还有 Assembly.GetExecuteingAssembly()。在这里,Lupin.vClass.Runtime是资源文件所在的项目的默认命名空间,最后一个单词StringTable就是文件名了。后面,Assembly.GetExecutingAssembly()的作用是取得当前正在执行的程序集,在这里的意义是资源文件所在的程序集。如果你读取的是其它程序集的资源文件,相应的这个要作改变。
后面,CultureInfo是本地信息,把它作为参数传递给GetString,程序能自动从相应的文件中读取值。比如用户的默认语言中是zh-cn,那么,程序在读取的时候会读取StringTable.zh-cn.resx中读取,相应的en-us的话,就会读取StringTable.en-us.resx,如果不传CultureInfo进去的话,那就是StringTable.resx了。
相关文章推荐
- 在.NET中读取嵌入和使用资源文件的方法
- 在.NET中嵌入和使用资源文件
- .net 使用资源文件实现多语言切换
- 在.NET中读取嵌入和使用资源文件的方法
- .NET资源文件(Resources)和语言文化信息(Culture)的使用
- [转贴] 在.NET中嵌入和使用资源文件
- [.Net码农]WPF 文件级资源(类似与使用CSS文件,然后引用CSS文件)
- 如何在.Net 中使用资源文件?
- .NET中对资源文件的使用简介
- 在.NET中读取嵌入和使用资源文件的方法
- .NET使用资源文件resx、Resources
- 在.NET中读取嵌入和使用资源文件的方法
- 在.NET中嵌入和使用资源文件
- 在.net中创建并使用资源文件(2)
- .NET(C#):使用IResourceReader,IResourceWriter和ResourceSet获取资源文件
- .NET使用资源文件resx、Resources
- .net中使用资源文件
- 在.net中创建并使用资源文件(1)
- 关于.NET使用资源文件
- 在.NET中读取嵌入和使用资源文件的方法