文件格式都是utf-8的编码,以下代码读取的时候个别中文字符会出现“?”的乱码
象“宫”“馆”“态”等,一般都是出现在一个中文字符串的最后一个字public String readFile(String fileName) throws ReaderException{
File f=new File(getBaseMergeDir()+File.separator+fileName);
if(!f.exists()){
return "";
}
try {
Reader reader=new FileReader(f);
char[] c=new char[2048];
StringBuffer sb=new StringBuffer();
while(reader.read(c)>-1){ sb.append(c);
c=new char[2048];
}
return sb.toString().trim();
} catch (Exception e) {
throw new ReaderException(fileName+" not found");
}
}
哪个高手碰到国没有??????
象“宫”“馆”“态”等,一般都是出现在一个中文字符串的最后一个字public String readFile(String fileName) throws ReaderException{
File f=new File(getBaseMergeDir()+File.separator+fileName);
if(!f.exists()){
return "";
}
try {
Reader reader=new FileReader(f);
char[] c=new char[2048];
StringBuffer sb=new StringBuffer();
while(reader.read(c)>-1){ sb.append(c);
c=new char[2048];
}
return sb.toString().trim();
} catch (Exception e) {
throw new ReaderException(fileName+" not found");
}
}
哪个高手碰到国没有??????
使用InputStreamReader可以指定编码格式。
那当然要使InputStreamReader了
楼主可以按照我的方法,如下:
InputStreamReader read = new InputStreamReader (new FileInputStream(文件路径),编码格式);
BufferedReader br = new BufferedReader(read);
最后
br.readLine();
即可~