C#文件操作大全(简)

System.IO

命名空间】

分类:

(1)用于

I/O

文件的类:

Directory

DirectoryInfo

File

FileInfo

FileStream

(2)用于从流读取和写入流的类:

StreamReader

StreamWriter

BinaryReader

BinaryWriter

通用I/O流类

BufferedStream

【导入System.IO】

==================================DirectoryInfo

:用于复制移动重命名创建删除目录的

【实例方法】

实例方法需要创建对象

DirectoryInfo info=new DirectoryInfo(path);

info.

方法;

==================================Directory:

用于复制移动重命名创建删除目录的

【静态方法】

静态方法直接使用类名

.

方法调用

String path ="E:\\C#";

//文件地址

Directory.Exists(path);

//判断目录是否存在

Directory.CreateDirectory(path);

//创建目录

Directory.GetCreationTime(path).ToLongDateString()

//获取目录创建的时间

String[]fileNames=Directory.GetFiles(path);//

获取子文件

String[]directoryNames=Directory.GetDirectories(path);//

获取子目录

Directory.Delete(path);

//目录删除

Directory.GetFileSystemEntries(path);//

返回指定目录的所有子目录和文件

Directory.GetCurrentDirectory();//

返回程序当前工作的目录

Directory.GetLastAccessTime(path);//

返回最后访问时间

Directory.GetLastWriteTime(path);//

返回最后修改时间

Directory.GetParent(path);//

返回指定目录的父目录

Directory.Move(要移动的目录,指定目录);//

将目录移动到指定位置

Directory.SetCreationTime(path,日期);

//设置创建日期

Directory.SetCurrentDirectory(path);//

将工作目录设置为指定目录

Directory.SetLastWriteTime(path,时间);//设置最后修改时间

=======================================================FileInfo

:用于创建,复制,删除,移动文件的实例方法实例方法需要创建对象

FileInfo

info=new

FileInfo(path);

info.

方法;

=======================================================File

用于创建,复制,删除,移动文件的静态方法,静态方法直接使用类名

.

方法调用

File.方法

File.AppendAllText(path,"",Encoding.Default);//

将指定字符串追加到文件中若文件不存在则创建文件

File.WriteAllText(path,"",Encoding.Default);

//创建新文件并写入内容,然后关闭该文件,目标

文件已存在时覆盖该文件

String[] a=File.ReadAllLines(path,Encoding.Default);//

打开文件并将所有行读入一个字符串,然后关闭该文件

File.OpenRead(path);

//打开指定文件进行读取

【Encoding.Default】

:编码方式

==================================================FileStream

(文件流)

:主要用于

使用二进制方式读写文件数据,可读取任何文件

创建FileStream对象

FileStream

stream=new

FileStream(文件路径,FileMode.Append,FileAccess.ReadWrite,FileShare.None);

//创建FileStream对象

【FileMode】

:指定系统打开文件的方式

FileStream

(CreateNew创建新文件,Creat创建新文件,如果存在则覆盖,Open打开现有文件,

OpenOrcreate打开文件,不存在则创建,Append打开文件查找到文件尾,Truncate

打开文件并清除内容)

【FileAccess】

:指定文件的访问方式(

Read只读,

write只写,

readwrite读写)

【FileShare】

控制其他

FileStream

对象对此文件的访问权(none不共享,read

允许随后打开文件并读取,write允许写入,

readwrite允许读写)

例:

FileStreamReader=new

FileStream(path,FileMode.Append,FileAccess.ReadWrite,FileShare.None);//

创建FileStream对象

//读取数据

byte[] aa=new

byte[Reader.Length];

Reader.Read(aa,0,aa.Length);

//将文件中数据读入byte数组aa

Reader.Flush();

Reader.Close();

//

写入数据

FileStreamWrite=new

FileStream(path,FileMode.Append,FileAccess.ReadWrite,FileShare.None);//

创建

FileStream对象

Write.Write(aa,0,aa.Length);

//从aa中取出数据写入文件

Write.Flush();

Write.Close();

 

Reader.ReadByte();//读取一个字节

reader.Position=6;//绝对定位

Reader.Seek(0,SeekOrigin.Begin);////相对定位

Write.WriteByte(字节);//将一个字节写入当前流

================================================================BufferedStream

:为Stream对象提供缓存,减少IO次数,提高读写效率

BufferedStreamreader=newBufferedStream(Stream对象);

================================================================StreamReader

:以一种特定的编码从字节流中读取字符

================================================================StreamWriter

:以一种特定的编码向字节流中写入字符//创建流先创建

Filestream对象

FileStreamfose=newFileStream("e:\\",FileMode.Append,FileAccess.Read,FileShare.Delete);

根据FileStream对象创建StreamReader或StreamWriter对象

StreamReaderreader=newStreamReader(fose,Encoding.Default);

FileStreamfos=newFile Stream(path,FileMode.Create,FileAccess.Read,FileShare.Inheritable);

StreamWriterwrite=new StreamWriter(fos,Encoding.Default);

int data;

data=reader.Read();//一个一个读取

char[] c=new char[1];

reader.ReadBlock(c,0,c.Length);//将读取的字符放入

char数组String  qq=reader.ReadLine();//

读取一行数据 reader.ReadToEnd();//从当前位置读到结尾

writer.Write((char)data);//写入Char型数据

writer.Write(datas,0,len);//写入数组中的指定元素

writer.WriteLine(datas);//写入后换行

write.Write(数据类型);//写入数据,可以是任何基本数据类型

posted @ 2017-10-10 15:31  风起苍岚  阅读(1217)  评论(0编辑  收藏  举报