C#文件读写补充知识

一. FileStream详解
 
1. (FileStream fs1 = File.Open("c:\\test.txt", FileMode.Open));
 
FileMode.Open 直接用FileStream类打开文件c:\\test.txt",
 
2. (FileStream fs2 = File.Open("c:\\test.txt", FileMode.Append, FileAccess.Write));
 
FileMode.Append,以追加的方式打开文件"c:\\test.txt",将某些内容写到"c:\\test.txt"里.
 
3.(FileStream fs3 =File.Open("c:\\test.txt", FileMode.Truncate, FileAccess.ReadWrite, FileShare.Read)).
 
FileMode.Truncate的意思是将文件打开清空里面的内容后再对文件进行操作..
 
4. FileStream MyFileStream1 = new FileStream(@"c:\Testing.txt", FileMode.Create);
 
这个方法的意思是创建一个可以读写的文件,并且可以允许其他人读取文件的内容.
 
二. C#基于流的输入输出.
 
C#基于流的输入输出.:Stream-通过C# I/O 系统与物理设备连接起来,也就是平时读写的硬盘等物理存贮设备.流/Stream的方法和属性有:
 


Method/ Properties

描述

 

void Close()

关闭流

 

void Flush()

清理流中的内容

 

int ReadByte()

返回一个整数表示输入的字节数,如果没有数据返回-1

 

int Read(byte[ ] buf,int offset, int numBytes)


将numBytes个字节读入到byte[ ]的以offset为,起始位置,返回读入成功的字节数
 


Long Seek(long offset,SeekOrigin origin)

将当前位置定位到以origin为初始位置以后的offset处.

 

void WriteByte(byte b)

将单个字节写入到一个输出流.

 

void Write(byte[ ] buf,int offset, int numBytes)

写入byte[ ] buf中从offset开始的numBytes个字节.

 

bool CanRead

是否可读

 

bool CanSeek

是否支持寻址

 

bool CanWrite

是否可以写入数据

 

long Length

流的长度

 

long Position

流的当前位置.

 
三. 流的继承结构
 
Stream是一个很大类的,在读写文件的时候,可以通过不同的流进行专业的数据读写.
 


The FileMode and FileAccess的几条规则:
 


Value

意义

 

FileMode.Create

创建文件,之前存在同名的文件将被毁掉

 

FileMode.CreateNew

创建新文件,这个文件之前不存在

 

FileMode.Open

打开已经存在的文件

 

FileMode.OpenOrCreate

打开文件如果存在,否则创建新文件

 

FileMode.Truncate

打开以存在的文件,将它的内容清除掉

 

FileMode.Append

以追加的形式将数据写入到文件的最后

 
如果在打开文件的时候想限制文件访问权限,那么可以做如下的构造方法:
 
FileStream(string filename, FileMode mode, FileAccess access);
 
     文件名       文件模式       操作模式
 
Access可以是以下当中的一个值:
 
FileAccess.Read/  FileAccess.Write/  FileAccess.ReadWrite;
 
FileStreamfs=new FileStream(“c:\\tab.txt”,FileMode.OpenOrCreate,FileAccess.Read);

本文来自编程入门网:http://www.bianceng.cn/Programming/csharp/200906/11371.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值