class Manager
{
public void Control() {
while (true)
{
Console.WriteLine("-----文件操作管理-----");
Console.WriteLine("1.创建文件");
Console.WriteLine("2.删除文件");
Console.WriteLine("3.查看文件");
Console.WriteLine("4.修改文件");
Console.WriteLine("退出请输入exit");
Console.WriteLine("请输入你的选择:");
string s = Console.ReadLine();
if (s.Equals("exit"))
{
break;
}
else if (s.Equals("1"))
{
g.CreateFile();
}
else if (s.Equals("2"))
{
g.DeleteFile();
}
else if (s.Equals("3"))
{
g.CheckFIle();
}
else if (s.Equals("4"))
{
g.AlterFile();
}
else
{
Console.WriteLine("请输入正确的指令");
}
}
}
public void CreateFile()
{
while (true)
{
try
{
Console.WriteLine("请输入指定路径:");//相对路径的话会直接保存入运行文件夹下
string s = Console.ReadLine();
if (s.Equals("exit"))
{
return;
}
if (File.Exists(s))
{
Console.WriteLine("该文件当前目录下已存在,是否重新输入");
Console.WriteLine("是则输入y:");
string s1 = Console.ReadLine();
if (s1.Equals("y"))
{
continue;
}
File.Create(s).Close();//创建完毕,关闭文件流
break;
}
else
{
File.Create(s);
break;
}
}
catch(UnauthorizedAccessException e){
Console.WriteLine("调用方无权限");
continue;
}
catch (Exception e)
{
Console.WriteLine("路径有误!!");
}
}
Console.WriteLine("文件创建成功!!!");
}
//2.删除文件:
//* 输入exit返回上一级,输入指定路径,判断该路径是否存在,存在就删除该文件,不存在就重新输入;
public void DeleteFile()
{
while (true)
{
Console.WriteLine("请输入指定路径:");//相对路径的话会直接保存入运行文件夹下
string s = Console.ReadLine();
if (s.Equals("exit"))
{
return;
}
if (!File.Exists(s))
{
Console.WriteLine("当前路径不存在该文件!!请重新输入");
continue;
}
else
{
File.Delete(s);
break;
}
}
Console.WriteLine("文件删除成功");
}
//* 3.查看文件:
//* 1)查看文件信息:名字,创建时间,最后修改时间,字节大小
//* 2)查看文件内容(doc,txt都可以查看,其他类型不可以);
public void CheckFIle()
{
while (true)
{
Console.WriteLine("请输入你要查看的文件路径:");//相对路径的话会直接保存入运行文件夹下
string s = Console.ReadLine();
if (s.Equals("exit"))
{
return;
}
if (File.Exists(s))
{
FileInfo file = new FileInfo(s);
Console.WriteLine("1.查看文件的信息");
Console.WriteLine("2.查看文件的内容");
string s1 = Console.ReadLine();
if (s1.Equals("1"))
{
Console.WriteLine("文件信息如下:");
Console.WriteLine("文件名:" + file.Name);
Console.WriteLine("文件创建时间:" + file.CreationTime);
Console.WriteLine("文件最后修改时间:" + file.LastWriteTime);
Console.WriteLine("文件大小:" + file.Length);
break;
}
if (s1.Equals("2"))
{
if (file.Extension.Equals(".txt") || file.Extension.Equals(".doc"))
{
Console.WriteLine("文件的内容如下:");
string[] s2 = File.ReadAllLines(s, System.Text.Encoding.Default);
foreach (var value in s2)
{
Console.WriteLine(value);
}
}
else
{
Console.WriteLine("不支持该文件的查看");
}
break;
}
}
else
{
Console.WriteLine("输入的文件路径有误:");
break;
}
}
}
//* 4.修改文件:
//* 1)修改文件中的某个内容(doc,txt):例如把里面所有的“1”改成“2”;
//* 2)修改文件的名字
public void AlterFile()
{
while (true)
{
Console.WriteLine("请输入你要修改的文件路径:");//相对路径的话会直接保存入运行文件夹下
string s = Console.ReadLine();
if (s.Equals("exit"))
{
return;
}
if (File.Exists(s))
{
FileInfo file = new FileInfo(s);
if (file.Extension.Equals(".txt") || file.Extension.Equals(".doc"))
{
FileInfo fileinfo = new FileInfo(s);
Console.WriteLine("1.修改文件内容");
Console.WriteLine("2.修改文件名字");
string s2 = Console.ReadLine();
if (s2.Equals("1"))
{
if (fileinfo.Length > 0)
{
byte[] arr = File.ReadAllBytes(s);
string value = Encoding.Default.GetString(arr, 0, arr.Length); //获取文本内容
Console.WriteLine("请输入你要修改的字符串,若文件中有该字符,将全部替换");
string str2 = Console.ReadLine();
if (str2 == "\r") {
Console.WriteLine("不能为空");
}
Console.WriteLine("请输入将要修改为的字符串");
string str3 = Console.ReadLine();
try
{
byte[] brr2 = Encoding.Default.GetBytes(value.Replace(str2, str3));
File.WriteAllBytes(s, brr2);
Console.WriteLine("修改成功");
break;
}
catch(Exception e ){
Console.WriteLine("字符串长度不能为0");
}
}
}
if (s2.Equals("2"))
{
Console.WriteLine("请输入你要修改的名字:");
string s1 = Console.ReadLine();
File.Move(s, s1);
Console.WriteLine("更名成功!!!");
break;
}
}
else {
Console.WriteLine("该文件格式不能修改");
}
}
else
{
Console.WriteLine("输入的文件路径有误:");``
break;
}
}
}
//public bool isYes(string s) {
// if (s.Equals("y")) {
// return true;
// }
// return false;
//}
}
文件操作,创建,删除,查看,修改
猜你喜欢
转载自blog.csdn.net/qq_36561650/article/details/81190778
今日推荐
周排行