有没有办法在.NET中自动生成相应的resx文件进行字符串本地化?

Ins*_*ter 11 .net localization

使用此答案,我创建了一个示例本地化应用程序.我的问题是,有没有办法让Visual Studio自动生成strings.fr.resx文件,其中包含相同的字符串(相同的名称,即空值),所以知道法语的人可以填写它们,或者我是实际上必须为我想支持的每种语言手动创建资源?

Gre*_*reg 12

您可以使用第三方工具执行此操作:Zeta资源编辑器

  1. 打开Zeta资源编辑器(ZRE)后,您必须创建一个新的ZRE项目.
  2. 然后,您必须将现有资源文件添加到此项目中.
    • 为所有资源文件自动执行此操作:
      1. 单击"文件组和标签"选项卡
      2. 单击"自动将多个文件组添加到项目"并按照说明进行操作.
  3. 要添加新语言:
    1. 突出显示"项目文件"树中的相应节点.
    2. 单击"文件组和标签"选项卡
    3. 单击"创建新文件"并按照说明操作.
    4. 确保将新创建的resex文件包含在Visual Studio项目中.

使用此工具的好处是,您还可以使用它将您的翻译导出/导入电子表格进行翻译.(您可以从"开始"标签执行此操作)


或者,您可以编写自己的小程序来执行此操作.该计划的核心是:

using( ResXResourceReader reader = new ResXResourceReader( resourceFileName ) )
using( ResXResourceWriter writer = new ResXResourceWriter( newResourceFileName ) )
{
    foreach( DictionaryEntry entry in reader )
    {
        writer.AddResource( entry.Key.ToString(), "" );
    }

    writer.Generate();
    writer.Close();
}
Run Code Online (Sandbox Code Playgroud)