📌  相关文章
📜  C#中带有示例的File.AppendAllText(String,String)方法

📅  最后修改于: 2021-05-30 00:21:17             🧑  作者: Mango

File.AppendAllText(String,String)是一个内置的File类方法,该方法用于将指定的字符串附加到给定的文件(如果该文件存在),否则创建一个新文件,然后完成附加。它还会关闭文件。
句法:

public static void AppendAllText (string path, string contents);

参数:该函数接受两个参数,如下所示:

例外情况:

  • ArgumentException:路径是长度为零的字符串,仅包含空格,或者由InvalidPathChars定义的一个或多个无效字符。
  • ArgumentNullException:路径为null。
  • PathTooLongException:给定的路径,文件名或两者都超过了系统定义的最大长度。
  • DirectoryNotFoundException:给定的路径无效,即目录不存在或在未映射的驱动器上。
  • IOException:打开文件时发生I / O错误。
  • UnauthorizedAccessException:该路径指定了一个只读文件。或当前平台不支持此操作。或路径指定目录。或呼叫者没有所需的权限。
  • NotSupportedException:路径格式无效。
  • SecurityException:调用者没有所需的权限。

下面是说明File.AppendAllText(String,String)方法的程序。
程序1:在运行下面的代码之前,将创建一个文件,其中包含一些如下所示的内容:

file.txt

CSharp
// C# program to illustrate the usage
// of File.AppendAllText() method
 
// Using System, System.IO,
// and System.Text namespaces
using System;
using System.IO;
using System.Text;
 
class GFG {
    // Main() method
    public static void Main()
    {
        // Creating a file
        string myfile = @"file.txt";
 
        // Adding extra texts
        string appendText = "is a CS portal." + Environment.NewLine;
        File.AppendAllText(myfile, appendText);
 
        // Opening the file to read from.
        string readText = File.ReadAllText(myfile);
        Console.WriteLine(readText);
    }
}


CSharp
// C# program to illustrate the usage
// of File.AppendAllText() method
 
// Using System, System.IO,
// and System.Text namespaces
using System;
using System.IO;
using System.Text;
 
class GFG {
    // Main() method
    public static void Main()
    {
        // Creating a file
        string myfile = @"file.txt";
 
        // Checking the existence of file
        if (!File.Exists(myfile)) {
            // Creating a file with below content
            string createText = "GFG" + Environment.NewLine;
            File.WriteAllText(myfile, createText);
        }
 
        // Adding extra contents
        string appendText = "is a CS portal." + Environment.NewLine;
        File.AppendAllText(myfile, appendText);
 
        // Opening the file to read from.
        string readText = File.ReadAllText(myfile);
        Console.WriteLine(readText);
    }
}


执行中:

mcs -out:main.exe main.cs
mono main.exe
GeeksforGeeks
is a CS portal.

运行上述代码后,将显示以上输出,文件内容如下所示:

file.txt

程序2:最初没有创建文件,但是以下代码本身创建了一个新文件并附加了指定的内容。

尖锐的

// C# program to illustrate the usage
// of File.AppendAllText() method
 
// Using System, System.IO,
// and System.Text namespaces
using System;
using System.IO;
using System.Text;
 
class GFG {
    // Main() method
    public static void Main()
    {
        // Creating a file
        string myfile = @"file.txt";
 
        // Checking the existence of file
        if (!File.Exists(myfile)) {
            // Creating a file with below content
            string createText = "GFG" + Environment.NewLine;
            File.WriteAllText(myfile, createText);
        }
 
        // Adding extra contents
        string appendText = "is a CS portal." + Environment.NewLine;
        File.AppendAllText(myfile, appendText);
 
        // Opening the file to read from.
        string readText = File.ReadAllText(myfile);
        Console.WriteLine(readText);
    }
}

执行中:

mcs -out:main.exe main.cs
mono main.exe
GFG
is a CS portal.

运行上面的代码后,上面的输出已显示,并创建了一个新文件,如下所示:

file.txt