Java文件读取

package a.ab;

import java.io.*;

public class FileWrite {
    public static void main(String[] args) {
        FileReader fr=null;
        try{
            File f=new File("D:\DD\d.txt");
            int num=0;
            fr=new FileReader(f);
            char [] buf =null;
            
            for(int i=0;i<f.length();i++){
                 buf =new char[3];
                 num=fr.read(buf);
                 if(num==-1){
                     System.out.println("文件已经读取完毕!");
                     break;
                 }
                System.out.println("读取了"+num+"个字符,分别是:"+ new String(buf,0,num));
            }
            
            fr.close();
        }catch(Exception ex){
            ex.printStackTrace();
        }
    }
}
View Code
package a.ab;

import java.io.*;

public class FileWrite {
	public static void main(String[] args) {
		FileReader fr=null;
		try{
			File f=new File("D:\DD\d.txt");
			int num=0;
			fr=new FileReader(f);
			char [] cbuf =new char[3];
			
			while((num=fr.read(cbuf))!=-1){
				System.out.println("读取了"+num+"个字符,分别是:"+ new String(cbuf,0,num));
			}
			System.out.println("文件已经读取完毕!");
			fr.close();
		}catch(Exception ex){
			ex.printStackTrace();
		}
	}
}

  


public int read(char[] cbuf) throws IOException
将字符读入数组。在某个输入可用、发生 I/O 错误或者已到达流的末尾前,此方法一直阻塞。
参数:
cbuf - 目标缓冲区
返回:
读取的字符数,如果已到达流的末尾,则返回 -1
抛出:
IOException - 如果发生 I/O 错误
先将文件内容读取到char[]数组里,最后再调用String(char[] ch)的构造方法,把char数组转换为String变量输出
原文地址:https://www.cnblogs.com/LYL-1314/p/5720458.html