package com.jeeplus.modules.account.web;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;
import com.drew.lang.BufferReader;
import scala.xml.dtd.PublicID;
/**
* 功能:Java读取txt文件的内容
* 步骤:1:先获得文件句柄
* 2:获得文件句柄当做是输入一个字节码流,需要对这个输入流进行读取
* 3:读取到输入流后,需要读取生成字节流
* 4:一行一行的输出。readline()。
* 备注:需要考虑的是异常情况
* @param filePath
* @author mch
* @serialData 2017-10-11
*/
public class FileUtils {
/**
* 文件写入
* @param fileName
* @param fileContent
*/
public static void writeFile(String fileName,String fileContent){
try {
File file=new File(fileName);
if(!file.exists()){ // 判断是否存在
file.createNewFile(); // 不存在 创建一个
}
OutputStreamWriter write=new OutputStreamWriter(new FileOutputStream(file), "gbk"); //文件写入 这里考虑到文件编码问题 utf-8 暴乱码 --》修改gbk
BufferedWriter writer=new BufferedWriter(write); //文件写
writer.write(fileContent);
writer.close(); //文件关闭
} catch (Exception e) {
e.printStackTrace();
System.out.println("文件写入出错!");
}
}
/**
* 读取Txt文件信息
* @param filePath
*/
public static List readTxtFile(String filePath){
List linList=new ArrayList();
try {
String encoding="utf-8";
File file=new File(filePath); //文件
if(file.isFile() && file.exists()){ // 判断 文件是否存在
InputStreamReader read=new InputStreamReader(new FileInputStream(file), "gbk"); //这里考虑到文件编码问题 utf-8 暴乱码 --》修改gbk
BufferedReader bufferedReader=new BufferedReader(read); //读取文件信息 内容
String linTxt=null; // 读取
while ((linTxt=bufferedReader.readLine())!=null) { //判断读取一行文件信息
if(linTxt.trim().length()>1){
linList.add(linTxt);
}
}
read.close();//关闭
}else {
System.out.println("找不到指定的文件!");
}
} catch (Exception e) {
// TODO: handle exception
System.out.println("读取文件内容信息出错!");
e.printStackTrace();
}
return linList;
}
//测试
public static void main(String[] args) {
String filePath="F:\\access\\small.txt";
//readTxtFile(filePath);
System.out.println("&&&&&:"+readTxtFile(filePath)+"\t");
}
}