黑马程序员——Java练习笔记——IO流

来源:互联网 发布:usb共享网络是什么意思 编辑:程序博客网 时间:2024/06/06 04:37

 ——- android培训、java培训、期待与您交流! ———-

1.文件读取的两种方式

package IO;import java.io.FileReader;import java.io.IOException;//文件读取的两种方式public class FileReaderDemo {    public static void main(String[] args) {//      通过变量len中转站//      read_File1();//      通过字符数组进行读取        read_File2();    }    private static void read_File2() {        FileReader fr = null;        try {            fr = new FileReader("demo1.txt");            int len = 0;            char[] ch = new char[1024];            while((len=fr.read(ch))!=-1){                String s = new String(ch,0,len);                System.out.println(s);            }        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        finally{            if(fr!=null)                try {                    fr.close();                } catch (IOException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                }        }    }    private static void read_File1() {        FileReader fr = null;        try {            fr = new FileReader("demo1.txt");            int len = 0;            while((len=fr.read())!=-1){                System.out.print((char)len);            }        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }}

2.IO异常的处理方式

package IO;import java.io.FileWriter;import java.io.IOException;// IO异常的处理方式public class FileWriterDemo {    public static void main(String[] args) {        // TODO Auto-generated method stub        FileWriter file  = null;        try {             file = new FileWriter("demo1.txt");             file.write("IO异常的处理方式");        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        finally{        try {                if(file!=null)                    file.close();        } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }        }    }}

3.读取一个.java文件。并打印在控制台上。

package IO;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;//练习 :读取一个.java文件。并打印在控制台上。 public class Demo1 {    public static void main(String[] args) {        // TODO Auto-generated method stub        FileReader fr =null;        try {//      源            fr = new FileReader("DateDemo.java");            int len = 0;            char[] ch = new char[1024];            while((len=fr.read(ch))!=-1){//      目的                System.out.println(new String(ch,0,len));            }        } catch (IOException e) {            e.printStackTrace();        }        finally{            if(fr!=null)                try {                    fr.close();                } catch (IOException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                }        }    }}

4.将C盘的一个文本文件拷贝到D盘

package IO;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;//将C盘的一个文本文件拷贝到D盘(数组相当于存储之中的媒介)public class Demo2 {    public static void main(String[] args) throws IOException {        // TODO Auto-generated method stub        FileReader fr = new FileReader("c:\\hahah.txt");        FileWriter fw = new FileWriter("d:\\hahahah.txt");        int len = 0;        char[] ch = new char[1024];        while((len=fr.read(ch))!=-1){            fw.write(ch,0,len);        }        fw.close();        fr.close();    }}

5.缓冲区练习:通过缓冲区复制一个文件

package IO;//缓冲区练习:通过缓冲区复制一个文件import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;public class Demo3 {    public static void main(String[] args) throws IOException {        // TODO Auto-generated method stub        BufferedReader br = new BufferedReader(new FileReader("c:\\hahah.txt"));        BufferedWriter bw = new BufferedWriter(new FileWriter("d:\\second_hahah.txt"));        String line = null;        while((line=br.readLine())!=null){            bw.write(line);            bw.newLine();            bw.flush();        }        bw.close();        br.close();    }}

6.演示mp3的复制。通过缓冲区。

package IO;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;//演示mp3的复制。通过缓冲区。public class Demo4 {    public static void main(String[] args) throws IOException{        BufferedInputStream bis = new BufferedInputStream(new FileInputStream("c:\\1.mp3"));        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("c:\\copy_1.mp3"));        long start = System.currentTimeMillis();        int len = 0;        while((len=bis.read())!=-1){            bos.write(len);        }        bis.close();        bos.close();        long end = System.currentTimeMillis();        System.out.println((end-start)+"毫秒");    }}
  1. 复制一个图片
package IO;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;// 复制一个图片public class Demo5 {    public static void main(String[] args) throws IOException {        // TODO Auto-generated method stub        FileInputStream fis = new FileInputStream("33.jpg");        FileOutputStream fos = new FileOutputStream("copy_33.jpg");        int len = 0 ;        while((len=fis.read())!=-1){            fos.write(len);        }        fos.close();        fis.close();    }}

8.将键盘录入的数据保存到一个文件中。

package IO;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStreamWriter;//将键盘录入的数据保存到一个文件中。public class Demo6 {    public static void main(String[] args) throws IOException {        // TODO Auto-generated method stub//      键盘录入数据        InputStream in = System.in;//      转换流        InputStreamReader isr = new InputStreamReader(in);//      缓冲流(高效率)        BufferedReader br = new BufferedReader(isr);        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("jj.txt")));        String line = null;        while((line=br.readLine())!=null){            if("over".equals(line))                break;            bw.write(line.toUpperCase());            bw.newLine();            bw.flush();        }        bw.close();        br.close();    }}
0 0