【问题标题】:Apache Commons ToStringBuilder String encodingApache Commons ToStringBuilder 字符串编码
【发布时间】:2018-07-01 23:56:13
【问题描述】:
我正在使用 Apache Commons 的 ToStringBuilder 来生成实体 toString 的块内容。
但是对于某些实体,存在用“ISO-8859-15”编码的字符串字段,所以我想知道生成的 toString 是否会使用平台的默认值(我的 vm 上的 UTF-8),而值输出不正确。
感谢您的帮助
【问题讨论】:
标签:
java
apache-commons-lang3
【解决方案1】:
Java 字符串总是使用 Unicode 作为字符。
编码 only 在从/向文件读取/写入字符串时会成为一个问题。或者例如将字符串转换为字节数组时。
从这个意义上说:您不必担心字符串生成器。您必须担心“数据最初来自哪里”和“要去哪里”。
为了完整性:是的,Java String 类有一个构造函数,您可以在其中传入所需的 encoding - 但该构造函数 也 将字节数组作为第一个争论。如前所述:在这种情况下,您必须担心编码。