c#简单的文件操作
2020-12-19 19:42
标签:htm while tps dal ref text ext cto 其他 使用FileInfo类的对象进行文件进行外部操作: 这里可以使用相对路径和绝对路径。需要注意是的当前路径是位于工程文件的.\bin\debug下的 FileInfo类下的方法都很好理解,自行查看即可。 使用File对文件内容进行操作。常用的三个读写方法: 写:File.WriteAllText、File.WriteAllLines和File.WriteAllBytes 读:File.ReadAllText、File.ReadAllLines和File.ReadAllBytes 写段代码小跑下: 结果如下: 一般使用FileStream处理二进制文件,如图片。 直接上代码: 在工程文件夹下打开(不存在就创建新的)文件”头像备份.jpg”并将”头像.jpg”文件的内容复制到其中。 文件流处理分为好几种情况。一般来说独占文件打开的话,如果不关闭文件流,那么其它进程就无法读取这个文件了。二在使用写入模式打开文件的时候,如果不进行close可能会有部分数据在缓存中没有真实写入文件中,这样其它程序打开文件时看到的数据就不完整了。 所以使用后一定要关闭文件流,不然会出现写入文件不完整的情况。比如: 如果需要进行大文件的复制,可以参考这篇博客:https://www.cnblogs.com/wolf-sun/p/3345392.html 使用StreamReader和StreamWriter来读写文本文件。十分简易: 很好理解。 与文件操作类似,使用DirectoryInfo类的对象进行文件操作: DirectoryInfo dirInfo = new DirectoryInfo("."); Console.WriteLine(dirInfo.FullName); 获取文件夹的完整路径,其他方法也很简单,这里也不过多演示。 c#简单的文件操作 标签:htm while tps dal ref text ext cto 其他 原文地址:https://www.cnblogs.com/qjns/p/13427403.htmlFileInfo
FileInfo file = new FileInfo(@".\..\..\lzx.txt");
if (file.Exists)
{
Console.WriteLine("lzx.txt存在");
//file.Delete();
}
else
{
Console.WriteLine("lzx.txt不存在");
file.Create();
}
File
File.WriteAllText(@".\..\..\lzx1.txt", "hello world!");
string s1 = File.ReadAllText(@".\..\..\lzx1.txt");
Console.WriteLine(s1);
string[] str = new string[]{"11","22","33","44"};
File.WriteAllLines(@".\..\..\lzx2.txt",str);
string[] str2 = File.ReadAllLines(@".\..\..\lzx2.txt");
foreach (var temp in str2)
{
Console.WriteLine(temp);
}
byte[] data = File.ReadAllBytes(@".\..\..\头像.jpg");
File.WriteAllBytes(@".\..\..\test.jpg",data);
Console.ReadKey();
}
FileStream
//FileStream readsStream = new FileStream(@".\..\..\lzx.txt",FileMode.Append);
FileStream readsStream = new FileStream(@".\..\..\头像.jpg",FileMode.Open);
FileStream writeStream = new FileStream(@".\..\..\头像备份.jpg",FileMode.OpenOrCreate);
byte[] data = new byte[1024];
while (true)
{
int length = readsStream.Read(data, 0, 1024);//每次返回读取的字节数,若读取完毕则返回0
writeStream.Write(data, 0, length);
Console.WriteLine(length);
if (length==0)
{
break;
}
}
//一定要关闭文件流,不然会出现写入数据不完整的情况
readsStream.Close();
writeStream.Close();
Console.ReadKey();
StreamReader和StreamWriter
StreamReader reader = new StreamReader(@".\..\..\lzx.txt");//不存在则抛出异常
StreamWriter writer = new StreamWriter(@".\..\..\test.txt");//存在就打开并覆盖,没有则创建
//写入
while (true)
{
string message = Console.ReadLine();
if (message =="q")
break;
//writer.Write(message);//写成一串
writer.WriteLine(message);//写成一行
}
//读取
while (true)
{
string message = reader.ReadLine();
if (message==null) break;
Console.WriteLine(message);
}
reader.Close();
writer.Close();
Console.ReadKey();
文件夹操作