今天就来学习一下C#和文件之间的联系,如果用C#的语句对我们的文件进行相应的操作?
基本操作 | 判存 | 复制 | 移动 | 删除 | 创建 |
基本方法: | File.Exist(); | File.Copy(); | File.Move | File.Delete() | file.create() |
Bool flag=file.exists(path) //判断这个路径下有没有这个文件 ,返回逻辑值 有 就删除,没有就创建一个 |
File.copy(path,新path)
如果那么路径有这个文件,这个时候就会出现异常; 但是如果我们在第三个参数的位置上写上true 那么就可以被覆盖 不会报错
File.copy(path,新path,true) |
File.move(path,新path) 可以改名,在新path中改名; | 删除指定路径下的文件,回收站没了,如果这个路径下没有这个文件,不报异常 File.delete(path) |
string str=@"D:\1.提高班\computer\CS学习\c#视频\20121106C#基础\视频\book.txt";
File.Create(str); //这个方法是在制定路径下创建一个文件,如果文件存在则覆盖该文件
|
注: 在我们编程的过程中File类是不可以直接使用的,需要先导入命名空间:
Using System.IO
扩展方法:
返回创建该文件的日期:
Datetime dt=file.getcreationtime(path);
返回上次修改该文件的日期时间:
Datetime dt=File.GetLastAccessTime(path);
由于File类是一个静态类,所以它里面的方法一般都是静态方法
读文件:
String path=@“地址”
String [] str=file.readlines(path,encoding.default)
//按行读取文章的内容
String [] str=file.readalltext(text,encoding.default)
// 读取地址中文件的内容;
String []names=new string[]{"","",""}
写文件:
string path = @"D:\1.提高班\computer\CS学习\c#视频\20121106C#基础\视频\book.txt";
方法一:
string[] name = new string[] { "老牛", "凤姐", "小月月" };
File.WriteAllLines(path, name);
//文件已存在,这个时候就会将旧文件的内容覆盖
File.WriteAllText(path, "haha ", Encoding.UTF8);
Console.WriteLine("啊哈哈");
Console.ReadKey();
如果我们不希望内容被覆盖,那么我们就可以这样使用:
string path = @"D:\1.提高班\computer\CS学习\c#视频\20121106C#基础\视频\book.txt";
File.AppendAllText(path, "哈哈 ,小富又帅了");
//在文件中追加文字,而不是将文件覆盖;
File.AppendAllLines(path, name);//在文件中继续按行追加不会覆盖
string path = @"D:\1.提高班\computer\CS学习\c#视频\20121106C#基础\视频\book.txt";
string[] name = new string[] { "老牛", "凤姐", "小月月" };
File.AppendAllLines(path, name);
//在文件中追加文字,而不是将文件覆盖;
通过File类的方法快速得到文件流:
FileStream fs=File.Open(); //返回filestream
FileStream fs=File.OpendRead();//返回只读的FileStream;
FileStream fs=File.OpendWrite();//返回只写的FileStream;
例子:
string path = @"D:\1.提高班\computer\CS学习\c#视频\20121108C#基础\视频\1";
FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read);
//使用指定的路径,创建模式,读、写权限和共享权限创建FileStream类的新实例
fs.Flush();//清楚此流的缓冲区
fs.Dispose();//释放资源
fs.Close();//关闭当前流并释放之前与之有关系的所有资源
基本操作: 创建,移动,删除等功能
同样在使用之前需要导入命名空间 Using System.IO
Directory 常用方法:
Move() Delete() Exist()
string path = @"D:\1.提高班\computer\CS学习\c#视频\20121108C#基础\视频\1";
1. Directory.CreateDirectory(path);
//在指定的路径下创建一个文件夹,如果文件夹内有东西在创建不报异常
2. Directory.Delete(path);
//如果文件夹中有东西是不能删除的;
3. Directory.Delete(path, true);
//这个方法是删除制定路径下的文件夹,如果文件夹内有东西,可以使用
//第二个重载,就不会报异常,会把文件夹连带文件夹内的文件全部删除
4. bool result=Directory.Exists(path);
//判断这个路径下有没有这个文件夹
Console.WriteLine(result); //返回 true 表示文件夹存在
Console.ReadKey ();
5.string ps=Directory.GetCurrentDirectory();
//获取当前程序所在的目录
6.string[] dire = Directory.GetDirectories(path);
//获取指定路径下的所有文件夹的全路径
小例子:
for (int i = 0; i < dire.Length; i++)
{
Console.WriteLine(dire[i]);
}
string[] file=Directory.GetFiles(path);//获取这个文件夹下面的所有文件的全路径
for (int i = 0; i < file.Length; i++)
{
Console.WriteLine(file[i]);
}