public static void SaveText(string stringToSave, string fileName, Encoding encoding) { FileInfo fileInfo = new FileInfo(fileName); if (!string.IsNullOrEmpty(FileManager.GetDirectory(fileName)) && !Directory.Exists(FileManager.GetDirectory(fileName))) { Directory.CreateDirectory(FileManager.GetDirectory(fileName)); } if (encoding == Encoding.UTF8) { StreamWriter writer = fileInfo.CreateText(); writer.Write(stringToSave); writer.Close(); } else { if (FileManager.FileExists(fileName)) { File.Delete(fileName); } using (FileStream fileStream = fileInfo.OpenWrite()) { byte[] bytes = encoding.GetBytes(stringToSave); fileStream.Write(bytes, 0, bytes.Length); } } }
private static bool DeleteTargetFileIfExists(string targetFileName) { bool succeeded = true; if (FileManager.FileExists(targetFileName)) { File.Delete(targetFileName); } return(succeeded); }
public static void SaveByteArray(byte[] whatToSave, string fileName) { if (FileManager.FileExists(fileName)) { File.Delete(fileName); } Directory.CreateDirectory(FileManager.GetDirectory(fileName)); using (FileStream fs = new FileStream(fileName, FileMode.Create)) { using (BinaryWriter bw = new BinaryWriter(fs)) { bw.Write(whatToSave); bw.Close(); fs.Close(); } } }
static string GetProperFilePathCapitalization(string filename) { if (FileManager.FileExists(filename)) { FileInfo fileInfo = new FileInfo(filename); DirectoryInfo dirInfo = fileInfo.Directory; return(Path.Combine(GetProperDirectoryCapitalization(dirInfo), dirInfo.GetFiles(fileInfo.Name)[0].Name)); } else { // August 8, 2011 // We used to return // null here but I'm not // sure why that is a good // idea. If we can't recast // we should just return the original // name. return(filename); } }
public static void XmlSerialize(Type type, object objectToSerialize, string fileName) { FileStream fs = null; #if SILVERLIGHT IsolatedStorageFileStream isfs = null; XmlWriter writer = null; #endif try { // Make sure that the directory for the file settings exist string directory = FileManager.GetDirectory(fileName); if (!string.IsNullOrEmpty(directory) && !Directory.Exists(directory)) { Directory.CreateDirectory(FileManager.GetDirectory(fileName)); } XmlSerializer serializer = GetXmlSerializer(type); #if SILVERLIGHT if (!fileName.Contains(IsolatedStoragePrefix)) { throw new ArgumentException("In Silverlight you must use isolated storage. Use FileManager.GetUserFolder."); } string modifiedFileName = GetIsolatedStorageFileName(fileName); isfs = new IsolatedStorageFileStream( modifiedFileName, FileMode.Create, mIsolatedStorageFile); XmlWriterSettings xms = new XmlWriterSettings(); xms.Encoding = System.Text.Encoding.UTF8; xms.Indent = true; writer = XmlWriter.Create(isfs, xms); #else if (FileManager.FileExists(fileName)) { fs = System.IO.File.Open(fileName, FileMode.OpenOrCreate | FileMode.Truncate); } else { fs = System.IO.File.Open(fileName, FileMode.OpenOrCreate); } XmlTextWriter writer = new XmlTextWriter(fs, System.Text.Encoding.UTF8); writer.Formatting = System.Xml.Formatting.Indented; #endif serializer.Serialize(writer, objectToSerialize); } finally { if (fs != null) { fs.Close(); } #if SILVERLIGHT if (isfs != null) { isfs.Close(); } #endif } }