Java读文件写文件操作

这里,Java的读文件和写文件都是基于字符流的,主要用到下面的几个类:

1、FileReader----读取字符流

2、FileWriter----写入字符流

3、BufferedReader----缓冲指定文件的输入

该类的方法有:

void close()  关闭该流。

void mark(int readAheadLimit)  标记流中的当前位置。

boolean markSupported()  判断此流是否支持 mark() 操作(它一定支持)

int read() 读取单个字符。

int read(char[] cbuf, int off, int len)  将字符读入数组的某一部分。

String readLine()  读取一个文本行。

boolean ready()  判断此流是否已准备好被读取。

void reset() 将流重置为最新的标记。

long skip(long n)  跳过字符。

4、BufferedWriter----将缓冲对文件的输出

该类的方法有:

void close()  关闭该流。

void flush()  刷新该流的缓冲。

void newLine()  写入一个行分隔符。

void write(char[] cbuf, int off, int len)  写入字符数组的某一部分。

void write(int c)  写入单个字符。

void write(String s, int off, int len) 写入字符串的某一部分。

举个例子如下:

package aillo;
import java.io.*;
public class FileWriterReader {
//功能:读取f:/aillo.txt文件的内容(一行一行读),并将其内容写入f:/jackie.txt中
//知识点:java读文件、写文件---<以字符流方式>
    public static void main(String[] args) {
        try {
            FileReader fr = new FileReader("f:/aillo.txt");//创建FileReader对象,用来读取字符流
            BufferedReader br = new BufferedReader(fr);    //缓冲指定文件的输入
            FileWriter fw = new FileWriter("f:/jackie.txt");//创建FileWriter对象,用来写入字符流
            BufferedWriter bw = new BufferedWriter(fw);    //将缓冲对文件的输出
            String myreadline;    //定义一个String类型的变量,用来每次读取一行
            while (br.ready()) {
                myreadline = br.readLine();//读取一行
                bw.write(myreadline); //写入文件
                bw.newLine();
                System.out.println(myreadline);//在屏幕上输出
            }
            bw.flush();    //刷新该流的缓冲
            bw.close();
            br.close();
            fw.close();
            br.close();
            fr.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
**********************************************************

从今天开始好好学Java,以弥补以前没认真学的缺憾

留言

Your email address will not be published. Required fields are marked *