using Common; using System; using System.IO; using System.Text.Encodings.Web; using System.Text.Json; using System.Text.Unicode; namespace AssortGenerator.Common { public static class JsonWriter { public static void WriteJson(T itemToSerialise, string outputFolderName, string workingPath, string fileName) { var outputPath = $"{workingPath}\\output\\{outputFolderName}"; DiskHelpers.CreateDirIfDoesntExist(outputPath); Console.WriteLine($"Writing json file to {outputPath}"); var options = new JsonSerializerOptions { WriteIndented = true, DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull, Encoder = JavaScriptEncoder.Create(UnicodeRanges.BasicLatin, UnicodeRanges.Cyrillic) }; var json = JsonSerializer.Serialize(itemToSerialise, options); File.WriteAllText($"{outputPath}\\{fileName}.json", json); } } }