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()操作是很有帮助的。

java--进步学习IO的更多相关文章

  1. Java基础学习-IO流

    package IObasics; import java.io.FileWriter; import java.io.IOException; /*IO流 * 通过数据流.序列化和文件系统提供系统输 ...

  2. Java基础学习 —— io

    /** 解决数据与数据之间的传输问题. 字节流: 输入字节流: -------| InputStream 所有输入字节流的基类.抽象类. -----------| FileInputStream 读取 ...

  3. Android(java)学习笔记167:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  4. Android(java)学习笔记110:Java中操作文件的类介绍(File + IO流)

    1.File类:对硬盘上的文件和目录进行操作的类.    File类是文件和目录路径名抽象表现形式  构造函数:        1) File(String pathname)       Creat ...

  5. Java NIO 学习笔记(七)----NIO/IO 的对比和总结

    目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...

  6. Java NIO学习系列四:NIO和IO对比

    前面的一些文章中我总结了一些Java IO和NIO相关的主要知识点,也是管中窥豹,IO类库已经功能很强大了,但是Java 为什么又要引入NIO,这是我一直不是很清楚的?前面也只是简单提及了一下:因为性 ...

  7. Java NIO学习笔记九 NIO与IO对比

    Java NIO与IO Java nio 和io 到底有什么区别,以及什么时候使用nio和io,本文做一个比较. Java NIO和IO之间的主要区别 下表总结了Java NIO和IO之间的主要区别, ...

  8. Java NIO学习系列六:Java中的IO模型

    前文中我们总结了linux系统中的5中IO模型,并且着重介绍了其中的4种IO模型: 阻塞I/O(blocking IO) 非阻塞I/O(nonblocking IO) I/O多路复用(IO multi ...

  9. Java程序设计学习笔记(三)—— IO

    时间:2016-3-24 11:02 --IO流(Input/Output)     IO流用来处理设备之间的数据传输.    Java对数据的操作是通过流的方式.    Java对于操作流的对象都在 ...

  10. 学习IO流

    学习IO流,不得不提到的就是JavaIO流.流就是字节序列的抽象概念,能被连续读取数据的数据源和能被连续写入数据的接受端就是流,流机制是Java及C++中的一个重要机制,通过流我们可以自由得控制文件, ...

随机推荐

  1. flash builder 4 编译器参数

    accessible=true|false 是否具有可理解性(如为残疾人提供方便的性能) actionscript-file-encoding | 设置文件编码,如Shitf_JIS advanced ...

  2. Clob对象转为字符串

    项目中遇到一个问题,对方公司把打印好的报表数据存到数据库中,实际上就是把html存在Oracle中,然后需要我们在社保系统里进行查询. 但是他们把数据存放在B数据库,而我们的社保系统用的数据库是B.A ...

  3. selenium+BeautifulSoup+phantomjs爬取新浪新闻

    一 下载phantomjs,把phantomjs.exe的文件路径加到环境变量中,也可以phantomjs.exe拷贝到一个已存在的环境变量路径中,比如我用的anaconda,我把phantomjs. ...

  4. (Problem 33)Digit canceling fractions

    The fraction 49/98 is a curious fraction, as an inexperienced mathematician in attempting to simplif ...

  5. 【转】Plotting texts as graphs with R and igraph

    原文转自:http://blog.ynada.com/303 I’ve plotted several word association graphs for this New York Times ...

  6. DataTable Select查询

    如果是Excel中数据,空数据为DBNull.Value 查询:dt.Select("name is null") 查询长度:dt.Select("len(convert ...

  7. 条码知识之十:EAN-128条码(下)

    国际物品编码协会(EAN)和美国统一代码委员会(UCC)将CODE-128码引入EAN/UCC系统,并作如下规定:起始符由一个START A/B/C 加一个辅助字符FNC1构成,以区别普通的CODE- ...

  8. 基于QtQuick2.0应用程序运行于XP系统的诸多问题

    客户端 使用QtQuick技术开发酷炫的XP客户端经常遇到白屏或者无界面 if Qt is built using ANGLE, its shared libraries and the requir ...

  9. jQuery入门学习贴

    先引一下阮一峰大牛翻译的书<软件随想录>中的一句话: “ joel认为,软件开发,最缺的是天才.而我认为,最缺的是全才.什么“全”:全面.全局.全心全意.全力以赴. ” 最近再学习jQue ...

  10. Python用subprocess的Popen来调用系统命令

    当我们须要调用系统的命令的时候,最先考虑的os模块.用os.system()和os.popen()来进行操作.可是这两个命令过于简单,不能完毕一些复杂的操作,如给执行的命令提供输入或者读取命令的输出, ...