2013-03-14 85 views
0

我的文件有错误。也就是说,所有的字符都像"Giá»âºi tính".我想用Java编写一个将这些字符转换为普通字符的程序。我试图将它们转换为字节,然后再次转换为字符串,但它保持不变。从无法识别的字符转换为正常形式

+1

您的文件不包含字符,而是**字节**。如果您看到您提到的字符,那么您已经为这些字节假设了特定的**编码**。不过,你们没有与我们分享任何细节。 – 2013-03-14 19:58:24

+0

如果使用十六进制编辑器或转储,您会看到什么?例如Unix'hexdump -C filename'或Windows'debug'? – BryanT 2016-03-12 15:12:48

回答

1

您需要知道文件的编码才能执行此操作。 Java在内部将所有字符串表示为UTF-16;为了解决该问题,您需要知道文件的编码,并在读取文件时使用该编码:http://goo.gl/PoBgo(Java API文档)

相关问题