关闭

JAVA-IO

54人阅读 评论(0) 收藏 举报
分类:

   public static void test1() {
        try {
            byte[] b = new byte[1024];
            FileInputStream fis = new FileInputStream("E:/j2se/1.txt");
            FileOutputStream fos = new FileOutputStream("E:/j2se/3.txt");
            while ((fis.read(b, 0, 1024)) != -1) {
                fis.read(b);
            }
            for (byte b1 : b) {
                System.out.println((char)b1);
            }
            fis.close();
            byte[] bb = { 3, 5, 42, 24 };
            for (byte b2 : bb) {
                fos.write(b2);
            }
            for (byte b3 : bb) {
                fos.write((b3 + "\r\n").getBytes());
            }
            fos.close();

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }


    public static void test2() throws IOException {
        byte[] b = new byte[1024];
        int len;
        len = System.in.read(b);
        FileOutputStream fos = new FileOutputStream("E:/j2se/1.txt",true);
        fos.write(b, 0, len);
//      fos.close();
    }


   public static void test3() {
        int count = 0, b;
        while (true) {
            try {
                b = System.in.read();
                if (b != '\r') {
                    count++;
                } else
                    break;
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

        }
        System.out.println(count);

    }



    public static void test4() {
        try {
            FileWriter fw = new FileWriter("E:/j2se/1.txt", true);
            fw.write("123456");
            fw.flush();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        try {
            FileReader fr = new FileReader("E:/j2se/1.txt");
            char[] c = new char[1024];
            fr.read(c);
            System.out.println(new String(c).trim());
            fr.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }


    public static void test5() {
        try {
            BufferedReader br = new BufferedReader(new FileReader(
                    "E:/j2se/1.txt"));
            BufferedWriter bw = new BufferedWriter(new FileWriter(
                    "E:/j2se/2.txt", true));
            String str;
            while ((str = br.readLine()) != null) {
                bw.write(str);
                bw.newLine();
            }
            br.close();
            bw.flush();
            bw.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }



public static void test6() {
        try {
            InputStreamReader isr = new InputStreamReader(new FileInputStream(
                    "E:/j2se/2.txt"));
            OutputStreamWriter osw = new OutputStreamWriter(
                    new FileOutputStream("E:/j2se/5.txt"));
            char[] c = new char[1024];
            while ((isr.read(c)) != -1) {
                System.out.println(new String(c).trim());
                osw.write(c);
            }

            isr.close();
            osw.flush();
            osw.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }


    public static void test7() {
        try {
            ObjectOutputStream oos = new ObjectOutputStream(
                    new FileOutputStream("E:/j2se/5.txt"));
            ObjectInputStream ois = new ObjectInputStream(new FileInputStream(
                    "E:/j2se/5.txt"));
            HelloWorld hw = new HelloWorld();
            oos.writeObject(hw);
            oos.flush();
            oos.close();
            HelloWorld h = (HelloWorld) ois.readObject();
            System.out.println(h.age + "   " + h.name);
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }


    public static void test7() {
        try {
            BufferedReader br = new BufferedReader(new InputStreamReader(
                    new FileInputStream("E:/j2se/5.txt")));
            BufferedWriter b = new BufferedWriter(new OutputStreamWriter(
                    new FileOutputStream("E:/j2se/6.txt")));
            String str = null;
            while ((str = br.readLine()) != null) {
                System.out.println(str);
                b.write(str);
            }
            b.flush();
            b.close();
            br.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }


public static void test8() {
        int len = 0;
        try {
            DataOutputStream dos = new DataOutputStream(new FileOutputStream(
                    "E:/j2se/7.txt"));
            for (int i = 0; i < 20; i++) {
                len = (int) (Math.random() * 100);
                dos.write((len + "\r\n").getBytes());
            }
            dos.writeInt(-1);
            dos.close();
            // DataInputStream dis=new DataInputStream(new
            // FileInputStream("E:/j2se/7.txt"));
            // while((len=dis.readInt())!=-1){
            // System.out.println(dis.readInt());
            //                
            // }
            // dis.close();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }


public static void test9() {
        int a[] = { 21, 33, 66, 21, 12, 43, 34 };
        try {
            RandomAccessFile raf = new RandomAccessFile("E:/j2se/7.txt", "rw");
            for (int i = 0; i < a.length; i++) {
                raf.writeInt(a[i]);
            }
            // rf.seek(4*6);
            // rf.writeInt(0);
            for (int j = a.length - 1; j >= 0; j--) {
                raf.seek(j * 4);// int鍗犻敓鏂ゆ嫹4閿熸枻鎷烽敓琛楁枻鎷?
                System.out.println(raf.readInt());
            }

        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

管道流:

import java.io.IOException;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;

public class PipeDemo {

    public static void main(String[] args) {
        PipedOutputStream pos = null;
        PipedInputStream pis = null;

        try {
            pos = new PipedOutputStream();
            pis = new PipedInputStream();
            pos.connect(pis);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            // e.printStackTrace();
            System.out.println("connect error");
            System.exit(1);

        }
        Send s = new Send(pos, pis);
        Receive r = new Receive(pis, pos);
        s.start();
        r.start();

    }
}

class Send extends Thread {
    PipedOutputStream out;
    PipedInputStream in;
    byte senddata[] = { 1, 2, 3, 4, 5 };

    Send(PipedOutputStream out, PipedInputStream in) {
        this.out = out;
        this.in = in;
    }

    public void run() {
        try {
            out.write(senddata, 0, 5);
        } catch (IOException e) {

        }
    }

}

class Receive extends Thread {
    PipedInputStream in;
    PipedOutputStream out;
    byte getdata[] = new byte[5];

    Receive(PipedInputStream in, PipedOutputStream out) {
        this.in = in;
        this.out = out;
    }

    public void run() {
        try {
            in.read(getdata, 0, 5);
            for (int i = 0; i <= 4; i++) {
                System.out.println("" + getdata[i]);
            }

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:54417次
    • 积分:1131
    • 等级:
    • 排名:千里之外
    • 原创:58篇
    • 转载:56篇
    • 译文:0篇
    • 评论:3条
    文章分类
    最新评论