java - 在属性文件中同时使用\u.... 和 html 实体?

标签 java properties character-encoding escaping

我偶然发现了一些 xxx_fr.properties、xxx_en.properties 等文件,我有点惊讶,因为它们同时包含 html 实体和 \uxxxx 转义。

我猜 HTML 实体没问题,只要这些资源提供给等待 HTML 的东西,但是 \uxxxx 转义呢?

Java 是否指定在 .properties 文件中可以进行 \uxxxx 转义?

最佳答案

是 - 请参阅 documentation对于 load(Reader),其中指出

Characters in keys and elements can be represented in escape sequences similar to those used for character and string literals.

然后澄清

Only a single 'u' character is allowed in a Unicode escape sequence.

因此,绝对支持包含单个“u”字符的 Unicode 转义序列。

请注意,在加载 HTML 实体时没有发生任何特殊情况 - 例如,字符串 & 在 Java 中将被简单地视为包含 5 个字符的字符串。正如您所指出的,如果稍后将其输出到其他某个组件,则可能会以特殊方式进行解释。

另一方面,转义序列 \u0061 在 Java 中将被视为单字符字符串“a”,并且与包含该字符的文件无法区分。

关于java - 在属性文件中同时使用\u.... 和 html 实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4649203/

相关文章:

angular - 类型 'value' 上不存在属性 'EventTarget'

ruby-on-rails - Ruby 修复多个编码文档

mysql - PHP PDO : chars ÖÄÅ wont show

java - 删除intelliJ中点周围的所有空格和制表符?

php - 您如何遍历当前类属性(不是从父类或抽象类继承的)?

java - Spring : PropertyPlaceholderConfigurer cannot find property file

mysql - 如何判断表中数据的编码是否错误?

java - 在我正在连接的服务器上跟踪日志并在网页上动态显示

java - 修剪字符串删除超过需要

java - 除非之前打印了条件,否则不会调用 if 语句