代码之家  ›  专栏  ›  技术社区  ›  realMarkusSchmidt

.NET中文本文件资源的本地化

  •  3
  • realMarkusSchmidt  · 技术社区  · 14 年前

    在使用resx文件的Visual Studio中,本地化/全球化非常容易。我只是添加一个资源文件,比如 MyTextSnippets.resx ,添加键/值对,并为我希望支持的每种语言创建副本,如 MyTextSnippets.de.resx , MyTextSnippets.fr.resx 等。

    现在想想较长的文本,其中字符串资源编辑器网格工作得不太好。没问题,只需从设计器中选择“添加资源添加新文本文件”,您就可以编辑任意多个文本文件。例子:我添加 MyTemplates.resx ,并在此resx中添加一个名为 SomeEmailTemplate.txt . 不过,如果创建resx文件的副本,比如 MyTemplates.de.resx 打开 somemail模板.txt 从那里,它会打开 总是相同的文件 . 如果查看详细信息,文本文件将不会嵌入到resx容器中,但它是在全局文件夹“resources”中创建的,并且resx文件只保存对同一文件的引用。

    我不知道如何使它本地化。有什么想法吗?

    当然,我可以嵌入为每种语言添加一个文本文件,并在运行时枚举可用的文本文件,并尝试找到当前线程的UI区域性的最佳匹配。然而,这感觉并不正确,因为字符串和设计器属性的所有魔力都是现成的。

    1 回复  |  直到 14 年前
        1
  •  3
  •   Oded    14 年前

    为所需的每种本地化语言创建一个文件夹,将相应的txt文件放在该文件夹中并引用该文件。

    了解全球化/本地化最佳实践 here .