【问题标题】:Special characters in properties file属性文件中的特殊字符
【发布时间】:2014-11-16 02:54:51
【问题描述】:

在我的 Java/Spring Web 应用程序中,我在打印从属性文件中检索到的意大利语特殊字符(ò、à、è 等)时遇到问题。

我发现这篇文章http://docs.oracle.com/cd/E26180_01/Platform.94/ATGProgGuide/html/s1816convertingpropertiesfilestoescap01.html

但有些不清楚:在我运行文章中编写的命令后,在我的控制台(Windows 的 CMD 控制台)中,我可以读取我的属性文件“已翻译”。之后,我该怎么办?

我应该从 Windows 控制台复制文本并将它们粘贴到我的属性文件中吗?看起来不像是“专业”的作品!

【问题讨论】:

  • 请添加您想要实现的代码示例。

标签: java spring jsp properties properties-file


【解决方案1】:

无需复制输出,您只需将其重定向到文件:

native2ascii notTranslated.properties > translated.properties

另外,如果您使用 Ant 构建项目,您可以使用 native2ascii ant 任务,例如:

<native2ascii src="srcdir" dest="srcdir" includes="**/*._properties" ext=".properties"/>

我在这里假设初始的非 ASCII 属性文件在您的项目中被命名为 *._properties

【讨论】:

  • 这是我需要的,一个翻译后的文件,无需从 CMD 控制台复制和粘贴
【解决方案2】:

键包含行中的所有字符.所有这些键终止字符都可以包含在键中,方法是用前面的反斜杠字符转义它们;例如,

\:\=

将是两个字符的键“:=”。可以使用 \r 和 \n 转义序列包含行终止符。跳过键后的任何空格;如果键后面的第一个非空白字符是“=”或“:”,则忽略它,并且也跳过它后面的任何空白字符。该行上所有剩余的字符都成为相关元素字符串的一部分;如果没有剩余字符,则元素为空字符串“”。一旦识别出构成键和元素的原始字符序列,就按上述方式执行转义处理。

查看this link 转义特殊字符,查看this link 以通过不同的UTF 读取。

【讨论】:

  • 如果您要从Properties.load javadoc 逐字粘贴,您至少可以通过链接确认这一点。虽然我看不出你引用的部分与这个问题有什么关系。
猜你喜欢
  • 1970-01-01
  • 2013-06-11
  • 1970-01-01
  • 2013-01-08
  • 1970-01-01
  • 2018-10-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多