c#文件操作示例带详细注释

时间:2021-05-20

复制代码 代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace Example
{

class Program
{

static void Main(string[] args)
{
//////////////// 文件打开 下面的代码打开D:\wang.txt文件,并且向文件中写入"hello"
FileStream textFile = File.Open(@"D:\wang.txt", FileMode.Append);//以Append方式打开文件(如果不存在,会创建)
byte[] info = { (byte)'h', (byte)'e', (byte)'l', (byte)'l', (byte)'o' };//要写入的信息
textFile.Write(info, 0, info.Length);//Write方法只能写入byte数组
textFile.Close();//关闭文件流

////////////////////// 文件创建
FileStream newText = File.Create(@"D:\newText.txt");//创建文件
newText.Close();//关闭文件

//////////////////// 删除文件
File.Delete(@"d:\newText.txt");

////////////////// 文件复制 如果目标文件存在,不允许复制(就是不能覆盖同名文件)
//File.Copy(@"d:\wang.txt", @"d:\CopyWang.txt");


//////////////// 文件移动 只能在同一个盘中移动 如果目标路径不正确,不能移动
// File.Move(@"d:\CopyWang.txt", @"D:\A\movewang.txt");

//////////////////////// 设置文件属性为 只读,隐藏
//File.SetAttributes(@"D:\copywang.txt", FileAttributes.ReadOnly | FileAttributes.Hidden);//同时满足多个属性,必须用位或(|).

/////////////// 判断文件是不是存在
if (File.Exists(@"D:\copywang.txt"))//如果存在 即便是隐藏的文件也可以找到
{
File.SetAttributes(@"D:\copywang.txt", FileAttributes.ReadOnly);//重新设置属性后,隐藏的文件也会显示出来,只要不加Hidden属性
Console.WriteLine("找到文件copywang.txt");
}
else
{
Console.WriteLine("没有找到文件CopyWang.txt");
}

StreamReader textReader = new StreamReader(@"D:\wang.txt", System.Text.Encoding.Default);//以默认编码方式打开文件
string str = textReader.ReadToEnd();//读取文件
Console.WriteLine("使用StreamReader读取文本内容:" + str);
textReader.Close();

//////////////////对txt文件写内容
StreamWriter textWriter = new StreamWriter(@"D:\wang.txt");
str = "Learn .Net";
textWriter.Write(str);
textWriter.Close();


Directory.CreateDirectory(@"D:\wang1\wang");//创建目录(文件夹)如果已经存在,则保持;还可以一次创建多级目录

/////////////////////////////////目录属性设置方法
DirectoryInfo dirInfo = new DirectoryInfo(@"D:\wang1\wang");//
dirInfo.Attributes = FileAttributes.Hidden;// | FileAttributes.ReadOnly;//设置文件夹属性

/////////////////Delete方法的第二个参数为bool类型,它可以决定是否删除非空目录。
//如果该参数值为true,将删除整个目录,即使该目录下有文件或子目录;若为false,则仅当目录为空时才可删除。
//Directory.Delete(@"D:\wang1", true);//如果文件设置为ReadOnly,则不能删除

//Directory.Move(@"d:\wang1", @"d:\wang3");//把文件夹wang1移动到文件夹wang3中,相当于把wang1删除,创建一个wang3,再把内容移动到wang3

string[] Directories = Directory.GetDirectories(@"D:\wang3");//获得文件夹wang3的目录
foreach (string var in Directories)
Console.WriteLine(var);

string[] Files = Directory.GetFiles(@"D:\wang1");//获取文件夹wang1下面的所有文件
foreach (string var in Files)
Console.WriteLine(var);

if (Directory.Exists(@"D:\wang1"))
Console.WriteLine("文件夹wang1存在");

Console.ReadLine();

}
}
}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章