zoukankan      html  css  js  c++  java
  • day19 IO编程

    文件:文件是数据源(保存数据的地方)的一种。

    文件在程序中是以流的形式来操作的

    内存(程序)到文件是输出流,文件到内存(程序)是输入流。

    字节流:可用于读写的二进制文件及任何类型文件。

    字符流:可以用于读写文本文件,不能操作二进制文件。

    字节流:

    OutPutStream:输出流

    InPutStream:输入流

    字符流:

    reader:输入流

    writer:输出流

    抒写步骤:

    1、判断输入还是输出。

    2、判断字节还是字符。

    3、通过子类实例化父类对象。

    3、进行读写操作。

    4、关闭输入输出流。

    需要牢记的代码:

    try{

    FileInPutStream fips = new FileInPutStream("文件路径");

    FileOutPutStream fops = new FileOutPutStream("文件路径");

    Byte[] bt = new Byte[];

    int length = 0;

    while((length=fips.read(bt))!=-1){

    fops.write(bt);

    fops.flush();

    }

    }

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

      finally {
       if (fips != null) {
        try {
         fips.close();
        } catch (IOException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
        }
       }
       if (fops != null) {
        try {
         fops.close();
        } catch (IOException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
        }

       }
      }

    }

    对象序列化与反序列化

    分布式应用的基础:对象序列化:将内存中的对象以二进制流的形式输出。

                             对象反序列化:将输入的二进制流转化为内存中的对象(第二种产生对象的方式)。

    serializable:标识接口,对象序列化之前必须实现标识接口。

    标识接口:允许实现它的类,进行某项操作,一般不含抽象方法。

    关键字transient:它修饰的属性,其值不参与序列化。

  • 相关阅读:
    jquery.validate使用攻略 5
    jquery.validate使用攻略 4
    ccnet1.5集成tfs中文版的问题
    解决mysql连接异常—com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception
    Myeclipse 6.5 增加对 JavaEE 6 的支持
    Python3.7环境配置
    myeclipse 8.6 software and workspace center is currently not available
    入坑cordova
    开启博客之路
    如何在高并发的分布式系统中产生UUID
  • 原文地址:https://www.cnblogs.com/fengshaolingyun/p/6180969.html
Copyright © 2011-2022 走看看