当前位置:编程学习 > C#/ASP.NET >>

C#操作IO(输入输出流)

 

1、建立一个文本文件

public class FileClass

{

    public static void Main()

    {

        WriteToFile();

    }

    static void WriteToFile()

    {

        StreamWriter SW;

        SW = File.CreateText(@"c:MyTextFile.txt");

        SW.WriteLine("God is greatest of them all");

        SW.WriteLine("This is second line");

        SW.Close();

        Console.WriteLine("File Created SucacessFully");

    }

}

2、读文件

public class FileClass

{

    public static void Main()

    {

        ReadFromFile(@"c:MyTextFile.txt");

    }

    static void ReadFromFile(string filename)

    {

        StreamReader SR;

        string S;

        SR = File.OpenText(filename);

        S = SR.ReadLine();

        while (S != null)

        {

            Console.WriteLine(S);

            S = SR.ReadLine();

        }

        SR.Close();

    }

}

 

public class FileClass

{

    public static void Main()

    {

        AppendToFile();

    }

    static void AppendToFile()

    {

        StreamWriter SW;

        SW = File.AppendText(@"C:MyTextFile.txt");

        SW.WriteLine("This Line Is Appended");

        SW.Close();

        Console.WriteLine("Text Appended Successfully");

    }

}

3、追加操作

 

 

 

 

C#追加文件

StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt");

sw.WriteLine("追逐理想");

sw.WriteLine("kzlll");

sw.WriteLine(".NET笔记");

sw.Flush();

sw.Close();

C#拷贝文件

string OrignFile,NewFile;

OrignFile = Server.MapPath(".")+"\\myText.txt";

NewFile = Server.MapPath(".")+"\\myTextCopy.txt";

File.Copy(OrignFile,NewFile,true);

C#删除文件

string delFile = Server.MapPath(".")+"\\myTextCopy.txt";

File.Delete(delFile);

C#移动文件

string OrignFile,NewFile;

OrignFile = Server.MapPath(".")+"\\myText.txt";

NewFile = Server.MapPath(".")+"\\myTextCopy.txt";

File.Move(OrignFile,NewFile);

C#创建目录

// 创建目录c:\sixAge

DirectoryInfo d=Directory.CreateDirectory("c:\\sixAge");

// d1指向c:\sixAge\sixAge1

DirectoryInfo d1=d.CreateSubdirectory("sixAge1");

// d2指向c:\sixAge\sixAge1\sixAge1_1

DirectoryInfo d2=d1.CreateSubdirectory("sixAge1_1");

// 将当前目录设为c:\sixAge

Directory.SetCurrentDirectory("c:\\sixAge");

// 创建目录c:\sixAge\sixAge2

Directory.CreateDirectory("sixAge2");

// 创建目录c:\sixAge\sixAge2\sixAge2_1

Directory.CreateDirectory("sixAge2\\sixAge2_1");

递归删除文件夹及文件

<%@ Page Language=C#%>

<%@ Import namespace="System.IO"%>

<Script runat=server>

public void DeleteFolder(string dir)

{

    if (Directory.Exists(dir)) //如果存在这个文件夹删除之

    {

        foreach(string d in Directory.GetFileSystemEntries(dir))

        {

            if(File.Exists(d))

                File.Delete(d); //直接删除其中的文件

            else

                DeleteFolder(d); //递归删除子文件夹

        }

        Directory.Delete(dir); //删除已空文件夹

        Response.Write(dir+" 文件夹删除成功");

    }

    else

        Response.Write(dir+" 该文件夹不存在"); //如果文件夹不存在则提示

}

protected void Page_Load (Object sender ,EventArgs e)

{

    string Dir="D:\\gbook\\11";

    DeleteFolder(Dir); //调用函数删除文件夹

}

 

// ======================================================

  // 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面

  // 如果目标文件夹为只读属性就会报错。

  // April 18April2005 In STU

  // ======================================================

  public static void CopyDir(string srcPath,string aimPath)

  {

   try

   {

    // 检查目标目录是否以目录分割字符结束如果不是则添加之

    if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar)

     aimPath += Path.DirectorySeparatorChar;

    // 判断目标目录是否存在如果不存在则新建之

    if(!Directory.Exists(aimPath)) Directory.CreateDirectory(aimPath);

    // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组

    // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法

    // string[] fileList = Directory.GetFiles(srcPath);

    string[] fileList = Directory.GetFileSystemEntries(srcPath);

    // 遍历所有的文件和目录

    foreach(string file in fileList)

    {

     // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件

     if(Directory.Exists(file))

      CopyDir(file,aimPath+Path.GetFileName(file));

      // 否则直接Copy文件

     else

      File.Copy(file,aimPath+Path.GetFileName(file

补充:软件开发 , C# ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,