package FileMpl;import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;import java.util.Set;import File.Readfile;public class ReadfileMpl implements Readfile {
/**
* 读取文件接口的实现类
* @throws IOException
*/
public List getList() throws IOException{ /**
* 创建文件
*/
File f1=new File("F:/项目/f1.txt");//指向该目录的对象
if(!f1.exists()){//如果该文件对象不存在,则执行createNewFile()方法,新创建一个文件
f1.createNewFile();
}
//System.out.println("开始读取文件内容!");
/**
* 开始读取文件
* 1,创建输入流
* 2,用BufferedReader读取文件
* 3,用while遍历文件
*/
//创建List集合
List list=new ArrayList();
// 打开读取文件的流
FileReader fr=new FileReader(f1);
BufferedReader br=new BufferedReader(fr); /**
* while循环读取文件的内容
* 读取指定字符:int read(byte[]b,intoff,int len)
* 从输入流中读取最多len长度的字节,保存到字节数组 b中,保存的位置从off开始
*/
String line;//用line存储读取到的内容
int num=1;//用num表示行数
byte[] uses=line.getBytes();//创建一个字节数组,存入uses
while(line=br.read(uses, 0, 8)){
}
/**按行数读取值
while((line=br.readLine())!=null){
//将line的值存储入一个ArrayList 集合
list.add(line);
num++;
}*/
//关闭流
fr.close();
br.close();
//返回list的值
return list;
}}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;import java.util.Set;import File.Readfile;public class ReadfileMpl implements Readfile {
/**
* 读取文件接口的实现类
* @throws IOException
*/
public List getList() throws IOException{ /**
* 创建文件
*/
File f1=new File("F:/项目/f1.txt");//指向该目录的对象
if(!f1.exists()){//如果该文件对象不存在,则执行createNewFile()方法,新创建一个文件
f1.createNewFile();
}
//System.out.println("开始读取文件内容!");
/**
* 开始读取文件
* 1,创建输入流
* 2,用BufferedReader读取文件
* 3,用while遍历文件
*/
//创建List集合
List list=new ArrayList();
// 打开读取文件的流
FileReader fr=new FileReader(f1);
BufferedReader br=new BufferedReader(fr); /**
* while循环读取文件的内容
* 读取指定字符:int read(byte[]b,intoff,int len)
* 从输入流中读取最多len长度的字节,保存到字节数组 b中,保存的位置从off开始
*/
String line;//用line存储读取到的内容
int num=1;//用num表示行数
byte[] uses=line.getBytes();//创建一个字节数组,存入uses
while(line=br.read(uses, 0, 8)){
}
/**按行数读取值
while((line=br.readLine())!=null){
//将line的值存储入一个ArrayList 集合
list.add(line);
num++;
}*/
//关闭流
fr.close();
br.close();
//返回list的值
return list;
}}
這個方法比較好用了可以讀取文件中的每個字符