博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java IO Demo
阅读量:5165 次
发布时间:2019-06-13

本文共 3771 字,大约阅读时间需要 12 分钟。

    //FileReader FileWriter 读写英文

    public void FileReaderAndWriter1() throws Exception {
        File filePath = new File("E:/iotest");
        if (!filePath.exists()) {
            filePath.mkdirs();
        }
        
        //写文件
        File file = new File(filePath.getPath(), "writer.txt");
        FileWriter writer = new FileWriter(file);
    
        
        for (int i = 0; i < 100; i++) {
            writer.write(new char[]{'a','b','c'});
            writer.write(new char[]{'\r','\n'});
        }
        writer.close();
        //读取文件
        FileReader reader = new FileReader(file);
        char[] chars=new char[100];
        int readCount =0;
        while((readCount=reader.read(chars))>0){
             System.out.print(String.valueOf(chars).substring(0, readCount));
        }
        reader.close();
    }
    //FileReader FileWriter 读写中文
    public void FileReaderAndWriter2() throws Exception {
        File filePath = new File("E:/iotest");
        if (!filePath.exists()) {
            filePath.mkdirs();
        }
        
        //写文件
        File file = new File(filePath.getPath(), "writer.txt");
        FileWriter writer = new FileWriter(file);
        BufferedWriter bfWriter = new BufferedWriter(writer);
        
        for (int i = 0; i < 10000; i++) {
            bfWriter.write("当前行号" + i);
            bfWriter.write("\r\n");
        }
        bfWriter.flush();
        writer.close();
        bfWriter.close();
        //读取文件
        FileReader reader = new FileReader(file);
        BufferedReader bfReader =new BufferedReader(reader);
        String line="";
        while((line=bfReader.readLine())!=null){
            System.out.println(line);
        }
    }
    //FileInputStream FileOutputStream
    public void FileStream() throws Exception{
        File file1 =new File("E:/iotest","writer.txt");
        FileInputStream input =new FileInputStream(file1);
        BufferedInputStream  bInput =new BufferedInputStream(input);
        
        File file2 =new File("E:/iotest","writer1.txt");
        FileOutputStream output = new FileOutputStream(file2);
        BufferedOutputStream bOutput =new BufferedOutputStream(output);
        byte [] b=new byte[1024];
        int bCount;
        
        while((bCount=bInput.read(b))>0){
             bOutput.write(b, 0, bCount);
         }
         bOutput.flush();
         bOutput.close();
         bInput.close();
        
    }
    
    //BitArrayInputStream BitArrayOutputStream
    public void BitStream()throws Exception{
        byte [] binput =new byte[]{12,-1,127,-128,0};
        
        ByteArrayInputStream  input = new ByteArrayInputStream(binput);
        int i;
        while((i = input.read())!=-1){
           System.out.println(i);
        }
        
        ByteArrayOutputStream output = new ByteArrayOutputStream();
        output.write(new byte[]{67,97,1});
        String strOut =    output.toString();
        System.out.println(strOut);
    }
    
    //CharArrayReader CharArrayWriter
    public void CharStream()throws Exception{
        CharArrayReader reader =new CharArrayReader(new char[]{'a','b','c'});
         int i;
        while((i=reader.read())!=-1){
            System.out.println(i);
        }
        
        CharArrayWriter writer = new CharArrayWriter();
        writer.write("上海");
        char [] cbuf =new char[]{'a','b','c','A'};
        writer.write(cbuf);
        
        File file = new File("E:/iotest/char.txt");
        FileWriter fw = new FileWriter(file);
        
        writer.writeTo(fw);
        
        writer.flush();
        fw.flush();
        
    }
    
    //ObjectStream
    public void ObjectStream() throws Exception{
        
        FileOutputStream fos = new FileOutputStream("E:/iotest/object.txt");
        ObjectOutputStream oos = new ObjectOutputStream(fos);
        
        oos.writeDouble(10.2);
        oos.writeFloat(16.323f);
        oos.writeChars("中国");
       
        Student stu =new Student(1,"cwg",new Date());
    
        oos.writeObject(stu);
        oos.flush();
        oos.close();
        
        FileInputStream fis =new FileInputStream("E:/iotest/object.txt");
        ObjectInputStream ois = new ObjectInputStream(fis);
        System.out.println( ois.readDouble());
        System.out.println( ois.readFloat());
        System.out.println( ois.readChar());
        System.out.println( ois.readChar());
        Object obj = ois.readObject();
        if(obj instanceof Student){
            Student rstu =(Student)obj;
            System.out.println(rstu.getId()+"--"+rstu.getUserName());
        }
    }
    
    public static void main(String[] args) throws Exception {
        IODemo demo = new IODemo();
        //demo.FileReaderAndWriter1();
        //demo.FileReaderAndWriter2();
        //demo.FileStream();
        //demo.BitStream();
        //demo.CharStream();
        //demo.ObjectStream();
        
    }

转载于:https://www.cnblogs.com/c2603/p/5006315.html

你可能感兴趣的文章
Tensorflow做阅读理解与完形填空
查看>>
[RxJS] Stream Processing With RxJS vs Array Higher-Order Functions
查看>>
特定字符序列的判断(1028)
查看>>
记一次报错信息
查看>>
判断数组内是否有几个元素之和等于m
查看>>
ExtJS(三)Ext.MessageBox工具类举例
查看>>
条件、循环、函数定义 练习
查看>>
RestAssured接口自动化测试之基础方法
查看>>
华为面试
查看>>
平衡二叉树(AVL Tree)
查看>>
【BZOJ3295】[Cqoi2011]动态逆序对 cdq分治
查看>>
【CF799E】Aquarium decoration 线段树
查看>>
大运飞天 鲲鹏展翅
查看>>
从ECMA到W3C
查看>>
OpenGL(十八) 顶点数组和抗锯齿(反走样)设置
查看>>
Activiti 删除key值相同的所有不同版本的流程定义
查看>>
软件工程--第十六周学习进度
查看>>
yii2 ActiveRecord多表关联以及多表关联搜索的实现
查看>>
搜狗输入法安装--ubuntu
查看>>
ps/2接口键盘的输入及显示
查看>>