Skip to content

ZH TW CSharp Files JSON

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

檔案、串流和JSON

手冊C# · 範例UO

System.IO 提供檔案、目錄和串流。 Path.Combine 連接路徑,File 適用於整個內容,Stream 適用於位元組序列。編碼決定了文本的轉換方式。對於非同步操作,傳遞取消令牌。

簡單範例 (Example.cs)

請將此範例另存為 Example.cs,並與本頁其他範例分開執行。

Example.cs:

// PROJECT-EXAMPLE
var counts = new int[] { 2, 3 };
string json = System.Text.Json.JsonSerializer.Serialize(counts);
System.Console.WriteLine(json);

結果:

[2,3]
using System.IO;
using System.Text;
string file = Path.Combine(Path.GetTempPath(), Guid.NewGuid() + ".txt");
try
{
    await File.WriteAllTextAsync(file, "C# text", Encoding.UTF8, Cancellation);
    string text = await File.ReadAllTextAsync(file, Encoding.UTF8, Cancellation);
    UO.Print(text);
}
finally
{
    if (File.Exists(file)) File.Delete(file);
}
record Settings(int Delay, string Mode);
var settings = new Settings(100, "idle");
string json = System.Text.Json.JsonSerializer.Serialize(settings);
Settings? restored = System.Text.Json.JsonSerializer.Deserialize<Settings>(json);
UO.Print(restored?.Mode ?? "missing");

相對路徑取決於進程的工作目錄。 JSON 儲存數據,不執行C# 程式碼。選擇適合您的屬性、建構函式和命名設定的序列化。

官方文件:文件、串流和 JSON - Microsoft Learn。

Clone this wiki locally