如何在ResourceManager类的帮助下读取嵌入在resx文件中的文本文件?
以下代码段有什么问题?
ResourceManager resman = new ResourceManager("Mynamespace.RESXFileName", Assembly.GetExecutingAssembly());
Stream stream = resman2.GetStream("ResourceName");
Run Code Online (Sandbox Code Playgroud)
流是alway = null!
using (var resourceStream = Assembly.GetExecutingAssembly()
.GetManifestResourceStream(resourceName))
{
if (resourceStream != null)
{
using (var textStreamReader = new StreamReader(resourceStream))
{
text = textStreamReader.ReadToEnd();
}
}
else
{
throw (new MissingManifestResourceException(resourceName));
}
}
Run Code Online (Sandbox Code Playgroud)
资源名称由名称空间和文件名确定.Say文件MyTxt.txt存在于项目的根目录中,该文件具有默认名称空间,MyNs然后资源名称将为:MyNs.MyTxt.txt
编辑
我应该学习阅读这个问题.我没有测试,但这应该给你你想要的:
static object GetResxObject(string resxPathName, string resourceKey)
{
using (var resxReader = new ResXResourceReader(resxPathName))
{
return resxReader
.Cast<DictionaryEntry>()
.Single(d => string.Equals(d.Key,
resourceKey))
.Value;
}
}
...
var myString=(string)GetResxObject(@"path\to\resx.resx","myStringKey");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3625 次 |
| 最近记录: |