public static void Serialize(FileInfo file, Action <GenericWriter> serializer) { file.Refresh(); if (file.Directory != null && !file.Directory.Exists) { file.Directory.Create(); } if (!file.Exists) { file.Create().Close(); } file.Refresh(); using (var fs = file.OpenWrite()) { var writer = new BinaryFileWriter(fs, true); try { serializer(writer); } finally { writer.Flush(); writer.Close(); } } }
public static void SerializeBlock(GenericWriter writer, Action <GenericWriter> serializer) { byte[] data = Array.Empty <byte>(); if (serializer != null) { using (MemoryStream ms = new MemoryStream()) { BinaryFileWriter w = new BinaryFileWriter(ms, true); try { serializer(w); w.Flush(); data = ms.ToArray(); } finally { w.Close(); } } } writer.Write(0x0C0FFEE0); writer.Write(data.Length); for (int i = 0; i < data.Length; i++) { writer.Write(data[i]); } }
public static void Serialize(FileInfo file, Action <IGenericWriter> serializer) { file.Refresh(); if (file.Directory?.Exists == false) { file.Directory.Create(); } if (!file.Exists) { file.Create().Close(); } file.Refresh(); using FileStream fs = file.OpenWrite(); BinaryFileWriter writer = new BinaryFileWriter(fs, true); try { serializer(writer); } finally { writer.Flush(); writer.Close(); } }
public static void Serialize(FileInfo file, Action<GenericWriter> serializer) { file.Refresh(); if (file.Directory != null && !file.Directory.Exists) { file.Directory.Create(); } if (!file.Exists) { file.Create().Close(); } file.Refresh(); using (var fs = file.OpenWrite()) { var writer = new BinaryFileWriter(fs, true); try { serializer(writer); } finally { writer.Flush(); writer.Close(); } } }
private void SaveTypeDatabase(string path, List <Type> types) { var bfw = new BinaryFileWriter(path, false); bfw.Write(types.Count); foreach (Type type in types) { bfw.Write(type.FullName); } bfw.Flush(); bfw.Close(); }
private static void SaveTypeDatabase(string path, IReadOnlyCollection <Type> types) { BinaryFileWriter bfw = new BinaryFileWriter(path, false); bfw.Write(types.Count); foreach (Type type in types) { bfw.Write(type.FullName); } bfw.Flush(); bfw.Close(); }
private void SaveTypeDatabase(string path, List<Type> types) { var bfw = new BinaryFileWriter(path, false); bfw.Write(types.Count); foreach (Type type in types) { bfw.Write(type.FullName); } bfw.Flush(); bfw.Close(); }