當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C# File.WriteAllLines(String, IEnumerable<String>)用法及代碼示例


File.WriteAllLines(String, IEnumerable<String>) 是一個內置的 File 類方法,用於創建新文件,將字符串集合寫入文件,然後關閉文件。

用法:

public static void WriteAllLines (string path, System.Collections.Generic.IEnumerable<String>contents);

參數:此函數接受兩個參數,如下所示:

  • path: This is the specified file where collection of strings are going to be written.
  • contents: This is the specified lines to write to the file.

異常:



  • ArgumentException:路徑是一個零長度的字符串,隻包含空格,或者一個或多個由 GetInvalidPathChars() 方法定義的無效字符。
  • ArgumentNullException:路徑或內容為空。
  • DirectoryNotFoundException:路徑無效。
  • IOException:打開文件時發生I /O錯誤。
  • PathTooLongException:路徑超過 system-defined 最大長度。
  • NotSupportedException:路徑格式無效。
  • SecurityException:調用者沒有所需的權限。
  • UnauthorizedAccessException:路徑指定了一個隻讀文件。或者路徑指定了一個隱藏的文件。 OR 當前平台不支持此操作。或者路徑是一個目錄。或者調用者沒有所需的權限。

下麵是說明 File.WriteAllLines(String, IEnumerable) 方法的程序。

程序1:在運行以下代碼之前,會創建一個文件 file.txt,其內容將被過濾,如下所示 -

file.txt

下麵的代碼本身會創建一個新文件 gfg.txt,其中包含過濾後的字符串。


// C# program to illustrate the usage
// of File.WriteAllLines(String, 
// IEnumerable<String>) method
  
// Using System, System.IO
// and System.Linq namespaces
using System;
using System.IO;
using System.Linq;
  
class GFG {
    // Specifying a file from where
    // some contents are going to be filtered
    static string Path = @"file.txt";
  
    static void Main(string[] args)
    {
        // Reading content of file.txt
        var da = from line in File.ReadLines(Path)
  
                 // Selecting lines started with "G"
                 where(line.StartsWith("G"))
                     select line;
  
        // Creating a new file gfg.txt with the
        // filtered contents
        File.WriteAllLines(@"gfg.txt", da);
        Console.WriteLine("Writing the filtered collection "+
                     "of strings to the file has been done.");
    }
}

輸出:

Writing the filtered collection of strings to the file has been done.

運行上麵的代碼後,顯示了上麵的輸出,並創建了一個新文件 gfg.txt 如下所示-

gfg.txt

程序2:在運行以下代碼之前,創建了兩個文件 file.txt 和 gfg.txt,其中的一些內容如下所示-

file.txt

gfg.txt

下麵的代碼用文件 file.txt 的選定內容覆蓋文件 gfg.txt。


// C# program to illustrate the usage
// of File.WriteAllLines(String,
// IEnumerable<String>) method
  
// Using System, System.IO
// and System.Linq namespaces
using System;
using System.IO;
using System.Linq;
  
class GFG {
    // Specifying a file from where
    // some contents are going to be filtered
    static string Path = @"file.txt";
  
    static void Main(string[] args)
    {
        // Reading the contents of file.txt
        var da = from line in File.ReadLines(Path)
  
                 // Selecting lines started with "g"
                 where(line.StartsWith("g"))
                     select line;
  
        // Overwriting the file gfg.txt with the
        // selected string of the file file.txt
        File.WriteAllLines(@"gfg.txt", da);
        Console.WriteLine("Overwriting the selected collection"+
                      " of strings to the file has been done.");
    }
}

輸出:

Overwriting the selected collection of strings to the file has been done.

運行上述代碼後,顯示如上輸出,文件 gfg.txt 內容如下所示:

gfg.txt




相關用法


注:本文由純淨天空篩選整理自Kanchan_Ray大神的英文原創作品 File.WriteAllLines(String, IEnumerable<String>) Method in C# with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。