首页 > 技术文章 > 流的操作20141104

DORCASQING 2014-11-05 10:42 原文

分类:文件流,内存流,网络流。
命名空间:using System.IO;

类:FileStream
构造:
FileStream stream = new FileStream(@"d:\test.txt", FileMode.Create);
FileStream stream = new FileStream(@"d:\test.txt", FileMode.Create, FileAccess.ReadWrite);

属性:
Length:流的长度
Position:流的当前位置

方法:
Write(byte[] 流的内容,int 从第几个位置开始写,int 写入的长度):写文件
Read(byte[] 用来存放读取出来的流的空间,int 从第几个位置开始读,int 读入的长度):读文件
Seek(int 偏移量,SeekOrignal 从哪开计算偏移):调整流的当前位置
Flush():把缓冲区的内容,全写到文件中去。
Close():关闭流。


流的写入操作:
第一步:建立文件流对象。
fs = new FileStream(@"e:\test.txt", FileMode.Create);
FileMode.Create()
FileMode.Open()
FileMode.Appen()

第二步:写入操作
1.把要写的内容转化为二进制数组。
byte[] nr = System.Text.Encoding.Default.GetBytes(textBox1.Text);

注意:Encoding类,是对文本进行编码的的类。它在System.Text命名空间下。它当中,有各种编码的属性(ASCII,Unicode,UTF8...),一般我们会用Default属性设置编码格式.
Encoding.Default:用操作系统默认的编文本编码格式进行编码。
Encoding.Default.GetBytes(....):把传入的参数按照指定的编码格式,编码为二进制数组。

2.用Write()写入。
fs.Write(nr,0,nr.Length);
第三步:关闭流。
fs.Close();


流的读取操作:
第一步:建立流的对象

第二步:读取流。
1.造个二进制数组,用来接受取出来的流的数据。
2.使用流的Read()方法,从流中读取二进制数据出来。
3.使用Encoding.GetString()方法,把二进制数组变成字符串。

第三步:关闭流。

//技巧点:启动外部EXE程序
System.Diagnostics.Process.Start(@"D:\Program Files (x86)\Tencent\QQ\QQProtect\Bin\QQProtect.exe");


StreamWriter类:
一、构造:
1.使用流进行构造。
StreamWriter writer = new StreamWriter(fs, Encoding.Default);
2.不使用流构造,直接面向文件
StreamWriter writer = new StreamWriter(@"E:\Test.txt", true, Encoding.Default);

二、属性:

三、方法:
Write(),WriteLine():
Close():关闭
Flush()

StreamReader类:
一、构造:
1.使用流进行构造
StreamReader reader = new StreamReader(fs, Encoding.Default);
2.不使用,直接面向文件
StreamReader reader = new StreamReader(@"E:\Test.txt",Encoding.Default);
二、属性:

三、方法:
ReadLine(),ReadToEnd():
Close()


文件及文件夹操作:
一、File类
1.创建:
FileStream fs = File.Create(文件路径);
记住,创建完成后,需要关闭fs,否则别人无法使用这个文件.

2.删除:
File.Delete(路径):无返回值。

3.复制:
File.Copy(路径):无返回值。

4.判断文件是否存在
File.Exists(路径):返回bool,true=已存在。false=未存在

推荐阅读