zoukankan      html  css  js  c++  java
  • java_25 FileReader类和FileWriter类

    1.FileWriter

      1.1FileWriter 用于写入字符流。要写入原始字节流,请考虑使用 FileOutputStream

    public class Demo {
    	public static void main(String[] args) throws IOException{
    		FileWriter fileWriter = new FileWriter("d:\aaa.txt");
    		//添加字符
    		fileWriter.write(100);
    		fileWriter.write(101);
    		//添加字符数组
    		char[] c = {'a','b','c','d'};
    		fileWriter.write(c);
    		fileWriter.write(c,1,2);
    		//添加字符串
    		fileWriter.write("hello world");
    		fileWriter.flush();
    		fileWriter.close();
    	}
    }
    

    2.FileReader

      1.1用来读取字符文件的便捷类。FileReader 用于读取字符流。要读取原始字节流,请考虑使用 FileInputStream

      //flush  和close区别
           // flush用来刷新缓冲区的  只有字符流才需要刷新  

      字节读取

    public class Demo {
    	public static void main(String[] args) throws IOException{
    		FileReader fileReader = new FileReader("d:\aaa.txt");
    		int len = 0;
    		while((len=fileReader.read())!=-1) {
    			System.out.print((char)len);
    		}
    		fileReader.close();
    	}
    }
    

       字符数组读取

    public class Demo {
    	public static void main(String[] args) throws IOException{
    		FileReader fileReader = new FileReader("d:\aaa.txt");
    		char[] b = new char[1024];
    		int len = 0;
    		while((len = fileReader.read(b))!=-1) {
    			System.out.println(new String(b,0,len));
    		}
    		fileReader.close();
    	}
    }
    

    3.传输数据

      

    public class Demo {
    	public static void main(String[] args){
    		FileReader fileReader = null;
    		FileWriter fileWriter = null;
    		try {
    			fileReader = new FileReader("d:\aaa.txt");
    			fileWriter = new FileWriter("d:\bbb/txt");
    			char[] ch = new char[1024];
    			int len = 0;
    			while((len=fileReader.read(ch))!=-1) {
    				fileWriter.write(ch,0,len);
    				fileWriter.flush();
    			}
    		} catch (Exception e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}finally {
    			if(fileWriter!=null) {
    				try {
    					fileWriter.close();
    				} catch (IOException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				}
    			}
    			if(fileReader!=null) {
    				try {
    					fileReader.close();
    				} catch (IOException e) {
    					// TODO Auto-generated catch block
    					e.printStackTrace();
    				}
    			}
    		}
    	}
    }
    
  • 相关阅读:
    交叉编译OpenCV的教程——基于aarch64-linux-gnu的交叉编译器
    Day01:我的Python学习之路
    将中文库导入到ARM板子中以解决中文显示乱码的教程
    Linux环境下挂载SD卡的教程
    Ubuntu下压缩与解压各种文件的命令
    Ubuntu14.04环境下Qt5.5以上版本无法输入中文的解决教程
    编程之美:队列中的最大最小值
    leetcode:Compare Version Numbers
    leetcode:Search for a Range
    csapp:无符号数可能造成的程序bug
  • 原文地址:https://www.cnblogs.com/smxbo/p/10698523.html
Copyright © 2011-2022 走看看