目前有一个方法去获取csv文件的编码格式,但是当csv文件为UTF8时,读取出的结果是GBK,
public static String codeString(String fileName) throws Exception { BufferedInputStream bin = new BufferedInputStream(new FileInputStream(fileName)); int p = (bin.read() << 8) + bin.read(); bin.close(); String code = null; switch (p) { case 0xefbb: code = "UTF-8"; break; case 0xfffe: code = "Unicode"; break; case 0xfeff: code = "UTF-16BE"; break; default: code = "GBK"; } return code; }
目前的原因应该是“p”的问题
这个地方就直接判断成了GBK,有没有大佬能给个判断编码格式的代码