java文件操作,
分享于 点击 45909 次 点评:173
java文件操作,
输入流是将数据从文件,标准输入或其他外部输入设备中加载到内存,输出流的作用则刚好相反,即将在内存中的数据保存在文件中,输出流在Java语言中对用于抽象类Java.io.OutputStream及其子类,胡如流对应于抽象类Java.io.InputStream抽象类Java.io.OutputStream和Java.io.OutputStream定义了输入与输出的基本操作1 InputStream和FileInputStream
因为Java.io.InputStream是抽象类,所以不能通过“new InputStream()”的方式构造Java.io.InputStream实例对象,但是它定义了输入流的基本操作。可以通过构造抽象类Java.io.InputStream的子类的实力对象获得Java.io.InputStream类型的实例变量 创建类Java.io.InputStream的实例对象可以通过类FileInputStream的构造方法
public FileInputStream(String name) throws FileNotFindException
其中参数name指定文件名
对文件内容进行操作的基本步骤为
(1)创建该文件所对应的输入/输出流或读写器的实例对象,以或得相关的系统资源
(2)对文件进行读写操作
(3)最后调用close方法,关闭文件,以释、释放所占有的系统资源
2 OutputStream和FileOutputStream
抽象类java.io.Outputstream是用来处理输出流的类。它定义了输出流的各种基本操作
System.Out是java.io.Outputstream类型的变量,对应于标准输出主要用来在控制台窗口中输出信息
抽象类java.io.Outputstream的成员方法
public void write(byte[] b) throws IOException
将字节数组b的各个字节写入到当前文件中
public void write(int b ) throws IOException
将有参数低8位组成的一个字节写入到当前文件中。在调用抽象类的write 方法之后,常常会调用抽象类的强制输出成员方法 public void flush() throws IOException
这往往是很有必要的,因为当前计算机系统为了提高运行效率,常常采用缓存机制。这样在条用方法write之后,常常不会讲数据直接输出或写入文件而是暂时保存在缓存中,当数据积累到了一定程度时,才会真正的往外输出数据。调用成员方法是为了强制立即输出数据。
importjava.io.BufferedReader;
importjava.io.FileReader;
importjava.io.IOException;
publicclassReadFile{
publicstaticvoidmain(String[]args){
Stringpath="c:/1.txt"; //定义文件路径
Stringcontent=""; //content保存文件内容,
BufferedReaderreader=null; //定义BufferedReader
try{
reader=newBufferedReader(newFileReader(path));
//按行读取文件并加入到content中。
//当readLine方法返回null时表示文件读取完毕。
Stringline;
while((line=reader.readLine())!=null){
content+=line+"n";
}
}catch(IOExceptione){
e.printStackTrace();
}finally{
//最后要在finally中将reader对象关闭
if(reader!=null){
try{
reader.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}
System.out.println("文件内容:"+content);
}
}
我们把读取文件的那一段提取出来:
publicclassReadFile{
publicstaticvoidmain(String[]args){
Stringpath="c:/1.txt"; //定义文件路径
try{
Stringcontent=readFile(path);
System.out.println("文件内容:"+content);
}catch(IOExceptione){
e.printStackTrace();
}
}
/**
*读取指定的文本文件,并返回内容
*
*@parampath文件路径
*@return文件内容
*@throwsIOException如果文件不存在、打开失败或读取失败
*/
privatestaticStringreadFile(Stringpath)throwsIOException{
Stringcontent="";
BufferedReaderreader=null;
try{
reader=newBufferedReader(newFileReader(path));
Stringline;
while((line=reader.readLine())!=null){
content+=line+"n";
}
}finally{
if(reader!=null){
try{
reader.close();
}catch(IOExceptione){
//关闭Reader出现的异常一般不需要处理。
}
}
}
returncontent;
}
}
相关文章
- 暂无相关文章
用户点评