Java 中如何转换文件编码格式?

2017-12-20 17:51:20 +08:00
 esolve

java 读一个文件,utf-16le 格式,里面都是手机号码

multipart 形参读进来之后

String line;
br = new BufferedReader(new FileReader(file));
while ((line = br.readLine()) != null) {
   。。。

发现 line 是数字和乱码相间的一个字符串

把文件在 linux 下用 vim 转换为 utf-8 格式就没问题

请问这种情况,如果用户上传的不是 utf-8 格式的文件,

譬如是这种 utf-16le 格式或者其他格式的

java 中如何转换文件编码格式?


我用了这种方案

            DataInputStream in = new DataInputStream(new FileInputStream(file));
	br= new BufferedReader(new InputStreamReader(in,"utf-8"));

可是不管用,依然乱码

895 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/416339

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX