Mencipta fail dan menulis kandungan ke dalamnya adalah asas pemprosesan fail. Di sini, kita akan membincangkan kaedah untuk menulis program C# untuk mencipta dan menulis fail. Dalam istilah orang awam, pemprosesan fail atau pengurusan fail merujuk kepada pelbagai proses seperti mencipta fail, membaca daripada fail, menulis ke fail, menambah fail, dan sebagainya. Melihat dan menulis fail ialah dua daripada operasi yang paling biasa dalam pengurusan fail.
Input dan output berlaku kerana strim menyediakan pandangan universal bagi jujukan bait. Strim ialah kelas abstrak. Ia adalah pintu masuk untuk proses yang berbeza iaitu input dan output. Menggunakan aliran fail dalam pemprosesan fail C#. Sekarang. Mari kita bincangkan kaedah yang berbeza untuk mencipta dan menulis fail.
Ini adalah salah satu kaedah yang paling biasa digunakan dan antara yang paling mudah digunakan. Kaedah ini mencipta fail dengan nama yang ditentukan oleh pengaturcara dan menulis data input rentetan ke dalamnya. Setelah kemasukan data selesai, fail akan ditutup. Jika fail yang ingin dibuat oleh pengguna sudah wujud, fail sebelumnya dalam storan akan ditimpa.
public static void WriteAllText (string path, string? contents);
Parameter input adalah semua rentetan. Secara lalai, pengekodan UTF-8 digunakan tanpa BOM (Byte Order Mark). Jika pengguna ingin menggunakan pengekodan yang berbeza, mereka boleh lulus parameter ketiga untuk menentukan pengekodan tertentu.
Sekarang, mari kita bincangkan algoritma untuk mencipta dan menulis fail menggunakan kaedah File.WriteAllText().
Langkah 1 - Isytiharkan pembolehubah menggunakan nama fail teks.
Langkah 2 − Rentetan diisytiharkan sebagai data.
Langkah 3− Maklumat dimasukkan ke dalam fail dan disimpan di dalamnya.
Langkah 4 − Selepas maklumat ditulis, cetak mesej kejayaan.
using System.Text; using System; using System.IO; class testfiles { public static void Main(){ var loc = "tutpoint.txt"; string inform = "Tutorials Point"; File.WriteAllText(loc, inform); //The text input is done Console.WriteLine("Text input completed."); } }
Text input completed.
Kaedah ini mencipta fail dengan nama yang ditakrifkan oleh pengaturcara dan menulis input rentetan tunggal atau berbilang rentetan sekaligus. Selepas kemasukan data selesai, fail ditutup. Jika fail yang pengguna ingin cipta wujud, fail sebelumnya dalam storan akan ditimpa.
public static void WriteAllLines (string path, string[] contents);
Ia menggunakan pengekodan UTF-8 tanpa BOM, iaitu Tanda Pesanan Byte.
Algoritma ini adalah mengenai File.WriteAllLines().
Langkah 1 - Isytiharkan pembolehubah menggunakan nama fail teks.
Langkah 2 − Rentetan diisytiharkan sebagai data.
Langkah 3 − Data ditulis pada fail tutpoint.txt.
Langkah 4 − Tulis baris kod untuk memaparkan kerja yang berjaya disiapkan.
using System.Text; using System; using System.IO; class testfiles { public static void Main(){ var loc = "tutpoint.txt"; string[] inform = {"Tutorials", "Point", "learn"}; File.WriteAllLines(loc, inform); //The text input is done Console.WriteLine("Text input completed."); } }
Text input completed.
Bagaimana jika anda ingin mencipta entri tatasusunan bait? Kemudian kita boleh menggunakan kaedah File.WriteAllBytes(). Kaedah ini mencipta fail dengan nama yang ditentukan oleh pengaturcara. Data tatasusunan bait ditulis pada fail, dan fail ditutup. Jika fail yang ingin dibuat oleh pengguna sudah wujud, fail sebelumnya dalam storan akan ditimpa.
public static void WriteAllBytes (string path, byte[] bytes);
Sekarang, mari kita bincangkan algoritma untuk mencipta dan menulis fail menggunakan kaedah File.WriteAllBytes().
Langkah 1 - Isytiharkan pembolehubah menggunakan nama fail teks.
Langkah 2 − Rentetan diisytiharkan sebagai data.
Langkah 3 − Masukkan maklumat ke dalam fail dan simpan di dalamnya.
Langkah 4 − Selepas maklumat ditulis, mesej kejayaan akan dicetak.
using System.Text; using System; using System.IO; class testfiles { public static void Main(){ var loc = "tutpoint.txt"; string inform = "Tutorial point contains a plethora of technical articles"; byte[] details = Encoding.ASCII.GetBytes(inform); File.WriteAllBytes(loc, details); //The text input is done Console.WriteLine("Text input completed."); } }
Text input completed.
Jika pengguna ingin memasukkan data secara tak segerak dan bukannya serentak, C# juga menyediakan fungsi ini kepada pengguna. Semua kaedah yang kami bincangkan di atas juga boleh digunakan secara tak segerak. Di sini kita akan membincangkan salah satu kaedah dan selebihnya boleh dilaksanakan dengan cara yang sama.
Kami akan belajar tentang WriteAllTextAsync().
public static System.Threading.Tasks.Task WriteAllTextAsync (string path, string? contents, System.Threading.CancellationToken cancellationToken = default);
此方法以异步方式创建文件,然后将所有文本写入文件。之后,文件被关闭。
现在,让我们讨论使用File.WriteAllTextAsync()方法创建文件和写入文件的算法。
步骤 1 − 变量使用文本文件名进行声明。
步骤2 − 字符串被声明为数据。
第 3 步− 信息被输入到文件中并存储在其中。
第4步 − 在信息被写入后,打印成功消息。
using System.Text; using System; using System.IO; using System.Threading.Tasks; class testfiles { public static void Main() { var loc = "tutpoint.txt"; string inform = "falcon"; // await File.WriteAllTextAsync(loc, inform); Task asyncTask = WriteFileAsync(loc, inform); //The text input is done Console.WriteLine("Text input completed."); } static async Task WriteFileAsync(string loc, string inform){ Console.WriteLine("Async Write File has started."); using(StreamWriter outputFile = new StreamWriter(Path.Combine(loc)) ){ await outputFile.WriteAsync(inform); } Console.WriteLine("Stage 2"); } }
Async Write File has started. stage 2 Text input completed.
所以,这篇文章就到这里结束了。在这篇文章中,我们学习了一个用C#编写文件和写入文件的程序。我们学习了各种方法来实现这一点。我们还讨论了不同的算法,并学习了它们的代码。我们希望这篇文章能够增加你对C#的了解。
Atas ialah kandungan terperinci Program C# mencipta dan menulis fail. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!