zoukankan      html  css  js  c++  java
  • java--进步学习IO

    import java.io.*;
    public class Demo1 {
        public static  void main(String []args) throws Exception{
            
            File fileOut = new File("Out.txt");
            File fileOut2 = new File("In.txt");
            BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
            
            //
            FileWriter fileWrite = new FileWriter(fileOut);//将从控制台读取的数据存入该文件
            FileWriter fileWrite2 = new FileWriter(fileOut2);//将从第一个文件中读取的数据保存至第二个文件
            
            //设置文件流的处理流
            
            BufferedWriter bfOut = new BufferedWriter(fileWrite);
            BufferedWriter bfOut2 = new BufferedWriter(fileWrite2);
            
    //        从控制台读入数据 写入第一个文件
            String string = bf.readLine();
            bfOut.write(string);
            bfOut.newLine();
            bfOut.close();
            File fileIn = new File("Out.txt");
            FileReader fileRead = new FileReader(fileIn);//从第一个文件中读取数据
            BufferedReader bfIn = new BufferedReader(fileRead);
            
    //        从第一个文件中读取数据,写入另外一个文件,同时展现在控制台中
            String string2 = bfIn.readLine();//读取
            bfOut2.write(string2);//写入
            System.out.println(string2);
            
    //        fileRead.close();
    //        fileWrite.close();
            bfIn.close();
            bfOut.close();
            bfOut2.close();
    
            
        }
    }

    废了好大的劲终于搞明白了,刚开始的时候,处理文件,同时定义两个流对象(一个打开一个关闭)指向同一个文件,这样就会导致同一个文件同时要被写入和读出,这样就会出现错误,类似于线程的同步性问题。

    另外,文件流在添加了处理流的套接的时候,可以只关闭处理流。

    文件的处理必须要关闭!!!flush()操作是很有帮助的。

  • 相关阅读:
    第一次结对编程作业
    第一次个人编程作业
    获取file中字段,写入到TXT文件中
    通过file中的字段查询MySQL内容
    MySQL常用语句
    MySQL乱码问题
    脚本数据编码格式转换
    mysql 常用命令操作
    thinkphp项目 Class 'finfo' not found
    POJ3255--次短路
  • 原文地址:https://www.cnblogs.com/plxx/p/3418895.html
Copyright © 2011-2022 走看看