C#学习2017-9-26Notes8(文件和流,FileStream类)

  1. 文件和流

对于计算机而言,文件往往保存在磁盘之类的外部设备,对文件的操作常常涉及相关文件夹的操作,操作文件和操作文件夹程序是冯文文件的两个方面。

所谓“文件”是指按一定的结构形式存储在外部设备上的相关数据集合。

(1)文件有很多类型的标准,按照文件的访问方式可将文件分为顺序文件和随机文件的两种。

①  顺序文件,顺序存储的文件成为顺序文件,顺序文件没有内部逻辑结构。

②  随机文件:随机存取的文件成为随机文件,它以记录格式保存数据,文件由多个记录组成,每个记录都有相同的大小和格式;只要给出记录号,就可以迅速地找到指定的记录进行读写操作。

(2)按照文件的存储方式,可将文件纷纷为二进制文件和ASCII码文件

①二进制文件:数据以二进制方式存储,存储的基本单位为字节;二进制文件能够度邪恶所需要的字节,可以节省存储空间的避免编码转换。

③  ASCLL码文件中的数据已字符形式表示,因而便于垵字符形式逐个处理,也便于打印输出字符

(3).NET流(Stream)

对文件的访问可以借助文件流来实现,对文件读写时,将文件处理成字符流或二进制流,对文件的读写就是读取文件字符流或二进制流

在.NET框架中,对文件的读写操作借助于I/O数据的通用模型System.IO.对所有数据源使用相同的代码操作。

System.IO模型中的资源命名空间System.IO提供。

(4)C#中用于文件   eInfo

 

 

、例如:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.IO;

 

namespace ConsoleApplication1

{

    class Program

    {

        static void Main(string[] args)

        {

            string path=@"F:\My.text";

            if (!File .Exists (path))

            {

                string content="Hello";

                File .WriteAllText (path ,content);

            }

            string appendText="This is extra text";

            File .WriteAllText (path ,appendText);

            string readText=File.ReadAllText(path);

            Console.WriteLine(readText );

            Console.Read();

        }

    }

}

2.FileStream类

用于实现文件读写的类都是Stream和Reader/Writer的的派生类,如FileStream类,StreamReader类,StreamWriter类,BinaryReader类和BinaryWriter类等。

FileStream还可以指定读写操作是同步还是异步。

 

使用FileStream类读写文件把所有数据都看作字节流,需要将数据先转换成字节。

FileStream对象支持使用Seek方法对文件进行随机访问。

Seek允许将读取/写入位置移动到文件中的任意位置。这是通过字节偏移参考点参数完成的。

字节偏移量是相对于查找参考点而言的,该参考点可以是基础文件的开始,当前位置或结尾,分别由SeekOrigin类的三个属性表示。

posted @ 2017-09-26 18:37  Adaisme  Views(241)  Comments(0Edit  收藏  举报