java中的IO操作总结(一)

所谓IO,也就是Input与Output的缩写。在java中,IO涉及的范围比较大,这里主要讨论针对文件内容的读写

其他知识点将放置后续章节(我想,文章太长了,谁都没耐心翻到最后)

对于文件内容的操作主要分为两大类

分别是:

  字符流

  字节流

其中,字符流有两个抽象类:Writer Reader

其对应子类FileWriter和FileReader可实现文件的读写操作

BufferedWriter和BufferedReader能够提供缓冲区功能,用以提高效率

同样,字节流也有两个抽象类:InputStream OutputStream

其对应子类有FileInputStream和FileOutputStream实现文件读写

BufferedInputStream和BufferedOutputStream提供缓冲区功能

俺当初学IO的时候犯了不少迷糊,网上有些代码也无法通过编译,美国服务器,甚至风格都很大不同,所以新手请注意:

1.本文代码较长,香港服务器租用,不该省略的都没省略,主要是因为作为一个新手需要养成良好的代码编写习惯

   2.本文在linux下编译,类似于File.pathSeparator和File.separator这种表示方法是出于跨平台性和健壮性考虑

   3.代码中有些操作有多种执行方式,我采用了方式1…方式2…的表述,只需轻轻解开注释便可编译

   4.代码中并没有在主方法上抛出异常,而是分别捕捉,造成代码过长,如果仅是测试,或者不想有好的编程习惯,那你就随便抛吧……

5.功能类似的地方就没有重复写注释了,如果新手看不懂下面的代码,那肯定是上面的没有理解清楚

字符流实例1:字符流的写入

import java.io.File;import java.io.FileWriter;import java.io.IOException;public class Demo {public static void main(String[] args ) {//创建要操作的文件路径和名称//其中,File.separator表示系统相关的分隔符,Linux下为:/ Windows下为:\\String path = File.separator + “home” + File.separator + “siu” +File.separator + “work” + File.separator + “demo.txt”;//由于IO操作会抛出异常,因此在try语句块的外部定义FileWriter的引用FileWriter w = null;try {//以path为路径创建一个新的FileWriter对象//如果需要追加数据,而不是覆盖,则使用FileWriter(path,true)构造方法w = new FileWriter(path);//将字符串写入到流中,\r\n表示换行想有好的w.write(“Nerxious is a good boy\r\n”);//如果想马上看到写入效果,服务器空间,则需要调用w.flush()方法w.flush();} catch (IOException e) {e.printStackTrace();} finally {//如果前面发生异常,那么是无法产生w对象的//因此要做出判断,以免发生空指针异常if(w != null) {try {//关闭流资源,需要再次捕捉异常w.close();} catch (IOException e) {e.printStackTrace();}}}}}先知三日,富贵十年。

java中的IO操作总结(一)

相关文章:

你感兴趣的文章:

标签云: