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(); } } }
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变量输出