2014-09-22 223 views
3

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

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

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

我应该从Windows控制台复制文本并将其粘贴到我的属性文件中?这似乎不是一个“专业”的工作!

+0

请添加您想要实现的代码示例。 – munyul 2014-09-22 07:56:40

回答

4

有一个在复制输出没有需求,你可能只是把它重定向到文件:

native2ascii notTranslated.properties > translated.properties 

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

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

我想在这里,初始非ASCII属性文件在您的项目命名为*._properties

+0

这就是我需要的一个翻译文件,没有从CMD控制台复制和粘贴 – MDP 2014-09-22 08:24:15

0

该键包含从第一个非空白字符开始,直到但不包括第一个非转义的'=',':'或行之外的空格字符的行中的所有字符终止。所有这些关键的终止字符都可以通过用前一个反斜杠字符转义来包含在密钥中;例如,

\:\= 

将是双字符键“:=”。可以使用\ r和\ n转义序列包含行结束符字符。跳过密钥后的任何空格;如果键后的第一个非空白字符是'='或':',则忽略它,并且其后的任何空格字符也被跳过。该行上的所有剩余字符都成为关联元素字符串的一部分;如果没有剩余字符,则该元素是空字符串“”。一旦识别了构成密钥和元素的原始字符序列,则如上所述执行转义处理。

请参阅this link以转义特殊字符,并参阅this link以通过不同的UTF读取。

+1

如果您打算从[Properties.load javadoc](http://docs.oracle.com/javase/7/docs/api/java/util/Properties.html#load(java.io。读者))至少你可以做的就是通过链接确认。尽管我不明白你所引用的部分与这个问题是如何相关的。 – 2014-09-22 08:29:25