我大约有 6 个 dll(没有源代码)。
它们不包含任何逻辑,而只是包含字符串表的 .resx 文件。
有没有一种方法可以从每个 dll 的字符串表中提取 Id 和值并将其导出到文本文件?
知道程序集名称和资源文件,您可以使用反射加载它。
// Resources dll
var assembly = Assembly.LoadFrom("ResourcesLib.DLL");
// Resource file.. namespace.ClassName
var rm = new ResourceManager("ResourcesLib.Messages", assembly);
// Now you can get the values
var x = rm.GetString("Hi");
要列出所有键和值,您可以使用ResourceSet
var assembly = Assembly.LoadFrom("ResourcesLib.DLL");
var rm = new ResourceManager("ResourcesLib.Messages", assembly);
var rs = rm.GetResourceSet(CultureInfo.CurrentCulture, true, true);
foreach (DictionaryEntry r in rs)
{
var key = r.Key.ToString();
var val = r.Value.ToString();
}
如果您无权访问资源库,您可以通过以下方式查看名称空间、类和其他所有内容反射器正如利奥所说。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)