Пример #1
0
        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);
                }
            }
        }
Пример #2
0
        private static bool DeleteTargetFileIfExists(string targetFileName)
        {
            bool succeeded = true;

            if (FileManager.FileExists(targetFileName))
            {
                File.Delete(targetFileName);
            }
            return(succeeded);
        }
Пример #3
0
        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();
                }
            }
        }
Пример #4
0
 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);
     }
 }
Пример #5
0
        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
            }
        }