6
Java FileReader编码问题
我尝试使用java.io.FileReader读取一些文本文件并将其转换为字符串,但是我发现结果编码错误并且根本不可读。 这是我的环境: Windows 2003,操作系统编码:CP1252 Java 5.0 我的文件是UTF-8编码或CP1252编码的,其中一些(UTF-8编码的文件)可能包含中文(非拉丁文)字符。 我使用以下代码来完成我的工作: private static String readFileAsString(String filePath) throws java.io.IOException{ StringBuffer fileData = new StringBuffer(1000); FileReader reader = new FileReader(filePath); //System.out.println(reader.getEncoding()); BufferedReader reader = new BufferedReader(reader); char[] buf = new char[1024]; int numRead=0; while((numRead=reader.read(buf)) != -1){ String readData = String.valueOf(buf, 0, numRead); fileData.append(readData); buf = …