【问题标题】:Appending resources to a .resx file将资源附加到 .resx 文件
【发布时间】:2011-02-21 12:41:13
【问题描述】:

如何打开现有的 .resx 文件、写入一些资源并关闭而不丢失原始文件中的资源?

【问题讨论】:

  • 这不是默认行为吗?编辑 .resx 文件时,我通常不会丢失任何现有资源。您没有使用 Visual Studio 作为您的编辑器吗?
  • 我正在使用 ResXResourceWriter 进行资源写入
  • 可以(尽管可能不是最好的技术)将 Resources.resx 文件作为 XML 文档进行处理。 stackoverflow.com/a/43431478/253938

标签: .net resources


【解决方案1】:

ResXResourceWriter 只写入新节点。要保留旧节点,您可以这样做: 下面的代码将向 resx 文件添加一个新节点,并通过迭代旧节点再次写入它们。我敢打赌有一个更简单的方法可以做到这一点,但无法弄清楚。

var reader = new ResXResourceReader("filename");
var node = reader.GetEnumerator();
var writer = new ResXResourceWriter("filename");
while (node.MoveNext())
{
    writer.AddResource(node.Key.ToString(), node.Value.ToString());
}
var newNode = new ResXDataNode("name", "value");
writer.AddResource(newNode);
writer.Generate();
writer.Close();

记得添加使用System.Resources

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-09
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-09
    • 1970-01-01
    相关资源
    最近更新 更多