日期:2014-05-20  浏览次数:20905 次

java如何实现任意编码文件转UTF8
小弟新手。。。现在有个任务就需要用java实现将文件转码成UTF8编码。。。文件的类型不确实。。。
要转的类型好像有  "EBCDIC cp937"  "GBK"  "BIG5" 等。。。
想请教一下 大概该怎么实现比较好。。。主要是想知道 怎么准确判断文件是什么编码格式的。。。
这个问题到底该怎么正确转成UTF8呢。。。大家帮帮忙。。。先谢谢了!

------解决方案--------------------
input
String str=new String(input.getBytes,"UTF-8");

------解决方案--------------------
先读取文件,然后
 Writer w = new OutputStreamWriter(new FileOutputStream(destFileName), "utf-8");
------解决方案--------------------
首先要能检测出文件的编码格式,然后才能读取出来,再转换成其他格式。
问题就是在于,怎么判断文件的编码格式是个困难。
------解决方案--------------------
一个移植到Java下的编码探测库
------解决方案--------------------
判断编码格式,都是先把文件转为字节数组,然后根据第一,第二,第三数组的值判断的。