在Java中,DataInputStream
和DataOutputStream
类具有readUTF
和writeUTF
,它们使用修改后的UTF-8格式。没关系,如果这些文件仅由其他Java程序或相同的Java程序使用,但是如果它们也是由不同语言的程序读取/写入的话呢?或者如果您使用标准格式,例如期望正常UTF-8编码的BSON,该怎么办?除了使用Charset手动编码/解码字符串之外,有没有办法使用DataInput
和DataOutput
的真正的UTF-8编码?
答案 0 :(得分:1)
使用InputStreamReader和InputStreamWriter,您可以使用特定编码初始化流。
如果您正在使用json流,请使用像gson一样处理json流的库,这些库应该遵循json.org格式,您不应该使用带有奇怪编码的字符串流来传输json流