C#文件操作总结

C#

文件操作总结

 

1.1文本文件的读写 
FileStream f=new FileStream("1.txt",FileMode.Create);//创建一个1.txt  FileStream f=new FleStream("1.txt",FileMode.Open);//打开一个1.txt //读取文件 
StramReader m=new StreamReader(f); 
string s=""; 
While(!m.EndOfStream) //判断文本文件是否到流的末尾

s+=m.ReadLine();
 } 
m.Close();
 f.Close(); //写入文件 
StreamWriter n=new StreamWriter(f); 
string s="";  
n.Write(s); //s可以为double/int /char/string类型 
n.Close(); 
f.Close();
 1.2二进制文件流读写 
FileStream f=new FleStream("1.txt",FileMode.Open);//打开一个1.dat 
//二进制文件读取 
BinaryReader m=new BinaryReader(f);
m.ReadBoolean(); //读取bool类型值 
m.ReadInt32(); //ReadInt64()/ReadString() 
m.Close(); 
f.Close(); //写入文件 
string s=""; //s可以为double/int /char/string类型 
BinaryWriter n=new BinaryWriter(f);
 n.Write(s);
 n.Close(); 
f.Close(); 
1.3File类的文件操作及文件信息获取 
bool s=File.Exists("1.txt"); //判断文件是否存在
bool File.Move(path1,path2); //将文件从path1移动到path2 File.Copy(path1,path2); //将文件从path1拷贝到
path2 File .Delete("1.txt");//删除文件 
DateTime d= File.GetCreationTime ("1.txt");//获取文件创建时间 
DateTime d=File .GetLastAccessTime ("1.txt");//获取上次访问文件的日期和时间 DateTime d=File .GetLastWriteTime ("1.txt");//获取上次修改文件的日期和时间 //修改时间 
DateTime d=DateTime .Now  
File .SetCreationTime ("1.txt",d);//设置文件创建时间 File .SetLastAccessTime ("1.txt",d);//设置文件上次修改时间 File .SetLastWriteTime ("1.txt",d);//设置文件上次写入时间 
1.4FileInfo 类的文件操作 
FileInfo类的文件操作 
FileInfo类提供的许多方法类似于File类的方法,但是File类是静态类,这是不同之处。
FileInfo aFile = new FileInfo("1.txt"); 
if (aFile.Exists) //判断文件是否存在
 { 
Console.WriteLine("File Exist!");
 } 
string s = aFile.FullName;//获得文件完整路径
 string s = aFile.Name;//获得文件完整路径 
string s = aFile.Extension;//获得文件扩展名 
string s = aFile.DirectoryName;//获得文件目录的路径 
int len = aFile.Length;//获得文件的容量
 bool s = aFile.IsReadOnly;//判断文件是否只读 
DateTime d = aFile.LastAccessTime;//获得文件最后访问时间 
DateTime d = aFile.LastWriteTime;//获得文件最后写入时间 
1.5 Directory类文件操作 
Directory类也是静态类,主要函数如下操作:
 string s = "D://FileDocument"; 
string src="D://3"; 
string dst="D://FileDocument//"; 
Directory.CreateDirectory(s);//在D盘创建文件夹FileDocument 
Directory.Delete(s);//删除D盘FileDocument文件夹,该文件夹必须可写或为空 
string[] num = Directory.GetDirectories(s);//返回D盘FileDocument 文件夹内所有文件夹的路径数组string[],即目录名数组 
string[] nm = Directory.GetFiles(s);//返回D盘FileDocument文件夹内所有文件的路径数组string[],不包括文件夹目录 
string[] numS = Directory.GetFileSystemEntries(s);//返回D盘FileDocument文件夹内所有文件及目录的路径数组string[] 
Directory.Move(src, dst);//把D盘文件3重命名为D盘文件FileDocument,该文件之前不可存在,执行该命令时重建 
注意:DirectoryInfo类作用类似于FileInfo类,是一个实例化的对象 1.5FileStream读取文件操作 
FileStream可以读取任何文件,包括声音和视频文件,但是只能处理原始字节,即,只能把文件内容保存在一个byte[]数组中,不过我们可以通过几种转换类可以很容易的将字节数组转换为字符数组,或将字符数组转换为字节数组。 
byte[] byData = new byte[100];
 char[] charData = new char[100]; 
FileStream aFile=new FileStream ("1.dat",FileMode .Open ); 
aFile.Seek(100, SeekOrigin.Begin);//从文件开头开始,将文件指针偏移100个字节 
aFile.Read(byData, 0, 100);//从当前指针位置,读取100个字节到byData数组中 
Decoder d = Encoding.UTF8.GetDecoder(); 
d.GetChars(byData, 0, byData.Length, charData, 0);//在byData中索引为0的位置开始,读取byData长度的字节数到字节数组charData中,位置是从charData的0索引位置开始
 byData = Encoding.UTF8.GetBytes(charData);//将字符数组转换为字节数组 
aFile .Seek (0, SeekOrigin.Begin );//把指针位置偏移到文件开头 
aFile.Write(byData, 0, byData.Length);//把byData数组内容写入文件中,开始位置为0索引处 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值