我们应该在java源代码中存储日语/法语和其他非ASCII字符吗?

时间:2010-07-28 13:25:46

标签: java

我在源代码中的一些正则表达式中使用了一些日语/法语单词。我不想将这些转换为\ u表示法,因为跟踪它会很困难并且可能会引入难以捕获的错误。

我们是否有任何标准做法来处理源代码中的非ASCII字符,或者可以按原样使用它们。

由于

2 个答案:

答案 0 :(得分:4)

由于程序行为现在依赖于编译程序的机器的平台默认编码或编译器参数,因此存在一定的风险。而且这也很难捕捉到错误。

如果只有少数这样的正则表达式,我更喜欢使用Unicode转义符。如果有很多,我会咬紧牙关并使用源代码的UTF-8,但只有在我有

之后
  • 使用UTF-8进行编译的构建脚本(以及仅使用该脚本构建的应用程序)
  • 确认正则表达式正常工作的一些单元测试
  • 自动构建服务器,为每个构建运行单元测试

答案 1 :(得分:1)

Java源代码被认为是用ASCII编码的,除非使用-encoding开关另外指定:

javac -encoding utf8 SourceFile.java

所以,使用它并将文本编辑器设置为UTF-8编码,你可以包含你喜欢的任何Unicode字符。