public static void SaveRuntimeGraph(string filePath, RuntimeGraph runtimeGraph) { var jsonObjectWriter = new JsonObjectWriter(); var runtimeJsonWriter = new RuntimeJsonWriter(jsonObjectWriter); JsonRuntimeFormat.WriteRuntimeGraph(runtimeJsonWriter, runtimeGraph); using (var file = File.CreateText(filePath)) using (var jsonWriter = new JsonTextWriter(file)) { jsonWriter.StringEscapeHandling = StringEscapeHandling.EscapeNonAscii; jsonWriter.Formatting = Formatting.Indented; jsonObjectWriter.WriteTo(jsonWriter); } }
/// <summary> /// Writes a PackageSpec to a file. /// </summary> /// <param name="packageSpec">A <c>PackageSpec</c> instance.</param> /// <param name="filePath">A file path to write to.</param> public static void WriteToFile(PackageSpec packageSpec, string filePath) { if (packageSpec == null) { throw new ArgumentNullException(nameof(packageSpec)); } if (string.IsNullOrEmpty(filePath)) { throw new ArgumentException(Strings.ArgumentNullOrEmpty, nameof(filePath)); } var writer = new JsonObjectWriter(); Write(packageSpec, writer); using (var fileStream = new FileStream(filePath, FileMode.Create)) using (var textWriter = new StreamWriter(fileStream)) using (var jsonWriter = new JsonTextWriter(textWriter)) { jsonWriter.Formatting = Formatting.Indented; writer.WriteTo(jsonWriter); } }