C#对TXT文件内容进行增删改操作
个人向记录,便于复习。
重点:使用流对文件进行操作时,文件会被锁住,使用完后一定要用Close()方法关闭流,释放资源,否则当别的方法调用该文件进行操作时,该文件会因为被锁住而无法操作。
使用using关键字,会自动释放资源,无需再调用Close()方法。
-
using System;
-
using System.IO;
-
using System.Text;
-
using System.Text.RegularExpressions;
-
-
namespace ConsoleApp3
-
{
-
/*
-
城春草木深,城春草木深。
-
感时花溅泪,恨别鸟惊心。
-
烽火连三月,家书抵万金。
-
白头搔更短,浑欲不胜簪。
-
*/
-
class Program
-
{
-
static void Main(string[] args)
-
{
-
//从上往下每个方法单独调试即可
-
//FileWrite(@"C:\Users\luzp\Desktop\file/text.txt", "会当凌绝顶,一览众山小。");
-
//FileRead(@"C:\Users\luzp\Desktop\file/text.txt");
-
//FileDetails(@"C:\Users\luzp\Desktop\file/text.txt");
-
//FileDelete(@"C:\Users\luzp\Desktop\file/text.txt");
-
FileMove(@"C:\Users\luzp\Desktop\file", @"C:\Users\luzp\Desktop", "123.txt");
-
Console.ReadKey();
-
}
-
//文件内容的写入
-
public static void FileWrite(string path,string content)
-
{
-
if (!File.Exists(path))
-
{
-
Console.WriteLine("文件不存在,创建“text.txt”文件");
-
-
using (StreamWriter sw = File.CreateText(path))
-
{
-
sw.Write(content);
-
//sw.Close(); //uisng会自动释放资源
-
}
-
-
Console.WriteLine("创建文件且写入内容成功!");
-
}
-
else
-
{
-
//单纯的写入,会清空文件原内容,再写入
-
//using (StreamWriter sw = new StreamWriter(path))
-
//{
-
// sw.Write(content);
-
//}
-
-
//追加内容,在原文内容的基础上追加内容,与上面单纯的写入不同,自己单个调试品味区别
-
FileStream fs = new FileStream(path, FileMode.Append);
-
StreamWriter sw1 = new StreamWriter(fs);
-
sw1.Write(content); //Write在原内容基础上另取一行,WriteLine在原文最末端接上内容
-
sw1.Close(); //创建流使用后一定要记得关闭流,释放资源。
-
fs.Flush();
-
-
Console.WriteLine("文件写入内容成功!");
-
}
-
-
}
-
//文件内容的读取
-
public static void FileRead(string path)
-
{
-
if (!File.Exists(path))
-
{
-
Console.WriteLine("文件不存在!请检查路径!");
-
}
-
else
-
{
-
string []str = File.ReadAllLines(path); //遍历一行一行读取
-
foreach (string text in str)
-
{
-
Console.WriteLine(text);
-
}
-
Console.WriteLine("===================");
-
StreamReader sr = new StreamReader(path,Encoding.UTF8); //全部读取
-
string content = sr.ReadToEnd();
-
sr.Close();
-
Console.WriteLine(content);
-
}
-
}
-
//文件内容修改
-
public static void FileDetails(string path)
-
{
-
if (!File.Exists(path))
-
{
-
Console.WriteLine("路径不存在");
-
}
-
else
-
{
-
//string[] str = File.ReadAllLines(path);
-
string str = File.ReadAllText(path);
-
str = Regex.Replace(str,"国破山河在","城春草木深"); //将文件内所有的"国破山河在"替换为"城春草木深"
-
File.WriteAllText(path,str);
-
Console.WriteLine("文件内容修改成功");
-
-
}
-
}
-
//文件内容删除
-
public static void FileDelete(string path)
-
{
-
File.WriteAllText(path, string.Empty); //string.Empty 等价于 null
-
Console.WriteLine("文件内容删除成功");
-
}
-
-
//移动文件
-
public static void FileMove(string oldPath, string newPath,string fileName)
-
{
-
DirectoryInfo dirInfo = new DirectoryInfo(oldPath);
-
FileInfo []fi =dirInfo.GetFiles();
-
fi[0].MoveTo(newPath "/" fileName);
-
Console.WriteLine("文件移动成功");
-
-
}
-
-
}
-
}
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfiifhh
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01