public void Save(string filename = "") { if (!string.IsNullOrEmpty(filename)) { FileInfo = new FileInfo(filename); } // Save As... if (!string.IsNullOrEmpty(filename)) { _pck.Save(FileInfo.Create()); _pck.Close(); } else { // Create the temp file _pck.Save(File.Create(FileInfo.FullName + ".tmp")); _pck.Close(); // Delete the original FileInfo.Delete(); // Rename the temporary file File.Move(FileInfo.FullName + ".tmp", FileInfo.FullName); } // Reload the new file to make sure everything is in order Load(FileInfo.FullName); }
public SaveResult Save(string filename = "") { SaveResult result = SaveResult.Success; if (filename.Trim() != string.Empty) { _fileInfo = new FileInfo(filename); } try { _pck.Save(new FileStream(_fileInfo.FullName, FileMode.Create, FileAccess.Write)); } catch (Exception) { result = SaveResult.Failure; } return(result); }