IO

用到的命名空间:using System.IO;

文件和目录的管理!

File类

FileInfo类

Directory类

DirectoryInfo类

操作文件的类!

FileStream{

Seek(偏移的位置,参考位置);

CopyTo(流对象);          等

}

StreamWrite

StreamReader

BinaryWrite

BinaryReader

FileStream是对二进制的文件进行操作的,功能很强大,可以对任意文件进行操作(所有文件在计算机底层都是二进制数).

StreamWrite 和 StreamReader是对文本文件进行操作的!可以使用FileStream的对象,作为参数,也可以不使用(建议使用)!

BinaryWite和BinaryReader是对内置类型进行<写入和读取>到文件的,必须使用FileStream的对象作为参数!

Using()用于定义一个范围,在此范围的末尾将释放对象,也可以手工释放对象,如:fs.close();

序列化

用到的命名空间:using System.Runtime.Serialization.Formatter.Binary;

序列化的作用:当需要永久存储程序中的对象的时候,我们可以使用序列化来完成!

序列化:把程序中的对象写入到文件中叫序列化.

反序列化:把文件中的对象读取回来到程序中叫反序列化

注意:文件读写可以做和序列化同样的工作,但是序列化会更方便

BinaryFormatter是序列化和反序列化的类!

Serialize(流对象,要序列话的对象);//序列化

Object  obj = Deserialize(流对象);//反序列化

序列的步骤:

1:创建要序列化的对象

2:创建流对象

3:创建BinaryFormatter 的对象(用来序列化)

4:使用BinaryFormatter 的对象调用Serialize序列化对象

反序列化的步骤:

1:添加添加序列化的对象的类库

2:Using该类库的命名空间

3:创建流对象

4:创建BinaryFormatter的对象(用来反序列化)

5:使用BinaryFormatter的对象调用Deserialize反序列化对象

c#-IO和序列化操作的更多相关文章

  1. Java 持久化之 --io流与序列化操作

    1)File类操作文件的属性 1.File类的常用方法 1. 文件的绝对完整路径:getAbsolutePath() 文件名:getName() 文件相对路径:getPath() 文件的上一级目录:g ...

  2. java.io.Serializable 序列化接口

    什么是序列化.反序列化? Serialization(序列化)是一种将对象以一连串的字节描述的过程: 反序列化deserialization是一种将这些字节重建成一个对象的过程. 序列化通俗一点说就是 ...

  3. Netty学习二:Java IO与序列化

    1 Java IO 1.1 Java IO 1.1.1 IO IO,即输入(Input)输出(Output)的简写,是描述计算机软硬件对二进制数据的传输.读写等操作的统称. 按照软硬件可分为: 磁盘I ...

  4. Java Io 对象序列化和反序列化

    Java 支持将任何对象进行序列化操作,序列化后的对象文件便可通过流进行网络传输. 1.      对象序列化就是将对象转换成字节序列,反之叫对象的反序列化 2.      序列化流ObjectOut ...

  5. Java---IO加强(3)-IO流的操作规律

    一般写关于操作文件的读取的几个通用步骤!!! 1.明确源和目的. 源:InputStream Reader 一定是被读取的. 目的:OutputStream Writer 一定是被写入的. 2.处理的 ...

  6. Asp.Net Core 2.0 项目实战(8)Core下缓存操作、序列化操作、JSON操作等Helper集合类

    本文目录 1.  前沿 2.CacheHelper基于Microsoft.Extensions.Caching.Memory封装 3.XmlHelper快速操作xml文档 4.Serializatio ...

  7. 第四节:IO、序列化和反序列化、加密解密技术

    一. IO读写 这里主要包括文件的读.写.移动.复制.删除.文件夹的创建.文件夹的删除等常规操作. 注意:这里需要特别注意,对于普通的控制台程序和Web程序,将"相对路径"转换成& ...

  8. IO流常规操作

    IO流 IO就是输入输出,IO设备在计算机中起着举足轻重的作用,IO流也就是输入输出流,用来交互数据,程序和程序交互,程序也可以和网络等媒介交互. 一.IO流的分类 要分类,肯定得站得不同角度来看这个 ...

  9. 序列化工具类({对实体Bean进行序列化操作.},{将字节数组反序列化为实体Bean.})

    package com.dsj.gdbd.utils.serialize; import java.io.ByteArrayInputStream; import java.io.ByteArrayO ...

随机推荐

  1. Javascript判断两个点(经纬度)的距离,以及是否在某个区域内(经纬度字符串)

    JS计算两个点(经纬度)的距离 function getGreatCircleDistance(lat1, lng1, lat2, lng2) { var EARTH_RADIUS = 6378137 ...

  2. 上课总结-模电chapter 2

    1.无明显失真时电压放大倍数——输出与输入电压的变化量之比 .无明显失真时 电流放大倍数——输出与输入电流的变化量之比 3.最大输出幅度 ①无明显失真时最大输出电压(或最大输出电流) ②交流有效值(U ...

  3. memcached装、启动和卸载

    1.下载相关软件: 下载地址:http://download.csdn.net/download/wangshuxuncom/8249501: 2.解压获取到的压缩文件,将得到一个名为“memcach ...

  4. leecode刷题(1)-- 删除排序数组中的重复项

    删除排序数组中的重复项 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度.不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的 ...

  5. linux+python+robot+jenkins

    1.安装python 安装devtoolset # yum groupinstall “Development tools” 安装编译Python需要的包 # yum -y install zlib- ...

  6. 条目七《如果容器中包含了通过new操作创建的指针,切记在容器对象析构前将指针delete掉》

    如果容器中包含了通过new操作创建的指针,切记在容器对象析构前将指针delete掉 在STL中容器是智能的,可以在容器销毁时自动调用容器里对象的析构函数来销毁容器存储的对象. STL的容器虽然比较智能 ...

  7. NAND NOR Flash 和MTD

    来自:http://blog.sina.com.cn/s/blog_6b489d5e0102xm62.html 一.NAND和NOR Flash 一般来说,快闪记忆体可分为两大规格,一个是NAND, ...

  8. MVC5 + EF6 入门完整教程1

    https://www.cnblogs.com/miro/p/4030622.html 第0课 从0开始 ASP.NET MVC开发模式和传统的WebForm开发模式相比,增加了很多"约定& ...

  9. pingUtil

    package unit; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamR ...

  10. [转] 商业应用中Java浮点数的精确计算及表示

    [From] https://blog.csdn.net/stevene/article/details/586089 问题提出 (1).浮点数精确计算 胜利油田三流合一项目中一直存在一个问题,就是每 ...