一行一行的读取文本内容
BufferedReader buf = null;
String line = null;
try {
// buf = new BufferedReader(new FileReader(FINAL_PINTOHANZI_FILE));
buf = new BufferedReader(new InputStreamReader(new FileInputStream(filePath), "utf-8"));
while((line = buf.readLine())!=null){
line = line.trim(); //去处空格
System.out.println(line)
}
} catch (IOException e) {
e.printStackTrace();
}finally{
if(buf != null){
try {
buf.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
一次性读取文本内容
按字节流方式先将文件都读入内存,再一次性编码转换是最快的方式
String charset = "utf-8";
File file = new File(filePath);
long fileByteLength = file.length();
byte[] content = new byte[(int)fileByteLength];
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream(file);
fileInputStream.read(content);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
fileInputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
String str = null;
try {
str = new String(content,charset);
System.out.println(str);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}