Repository navigation
RU CSharp Files JSON
Codex edited this page Oct 11, 2026
·
2 revisions
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
System.IO предоставляет файлы, каталоги и потоки. Path.Combine соединяет пути, File работает с целым содержимым, Stream — с последовательностью байтов. Кодировка определяет преобразование текста. Асинхронным операциям передавайте токен отмены.
Сохраните этот пример отдельно как 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.
ClassicUO — Bad Newbie & C# Scripts IDE