Example #1
0
        /// <summary>
        /// Добавление разделителя пути (если необходимо)
        /// <example>
        /// Input:  'C:\Folder 1'
        /// Result: 'C:\Folder 1\'
        /// </example>
        /// </summary>
        public static String AddPathSeparator(String path)
        {
            if (path.IsValid())
            {
                if (path.EndsWith(PATH_SEPARATOR) == false)
                    path += PATH_SEPARATOR;
            }

            return path;
        }
Example #2
0
        /// <summary>
        /// Сохранение потока в файл
        /// </summary>
        public static Boolean Save(this Stream stream, String filename)
        {
            if (stream == null || filename.IsValid() == false)
                return false;

            if (stream.Length != 0)
            {
                // Создание директории файла
                String destPath = Files.GetPath(filename);
                if (Directory.Exists(destPath) == false)
                    Files.CreateDir(destPath);

                using (FileStream fileStream = System.IO.File.Create(filename, (int)stream.Length))
                {
                    // Создание и заполнение массива данными из потокаwith the stream data
                    Byte[] bytesInStream = new Byte[stream.Length];
                    stream.Position = 0;
                    stream.Read(bytesInStream, 0, (int)bytesInStream.Length);

                    // Запись в поток
                    fileStream.Write(bytesInStream, 0, bytesInStream.Length);
                }

                // После using вызовется fileStream.Close() и файл будет записан
            }

            return true;
        }
Example #3
0
        /// <summary>
        /// Смена имени файла/директории
        /// </summary>
        public static Boolean Rename(String path, String newName)
        {
            if (path.IsValid() == false) return false;
            if (newName.IsValid() == false) return false;
            if (Files.IsExists(path) == false) return false;

            if (Files.IsFile(path))
            {
                // Путь является файлом
                // Составление полного пути получателя
                String destPath = Files.GetPath(path) + newName;

                // Файл уже так называется
                if (destPath == path) return true;

                // Если файл существует: Удаление файла
                if (Files.IsExists(destPath))
                    DeleteFile(destPath);

                FileInfo info = new FileInfo(path);
                info.MoveTo(destPath);

                return true;
            }
            else if (Files.IsDirectory(path))
            {
                // Путь является директорией
                // Составление полного пути получателя
                String destPath = Files.GetPathParent(path) + "\\" + newName;

                // Если файл существует: Удаление файла
                if (Files.IsExists(destPath))
                    DeleteDir(destPath);

                DirectoryInfo info = new DirectoryInfo(path);
                info.MoveTo(destPath);

                return true;
            }

            return false;
        }
Example #4
0
        /// <summary>
        /// Извлечение полного пути к файлу/директории
        /// </summary>
        /// <param name="path"></param>
        /// <returns></returns>
        public static String GetPath(String path)
        {
            if (path.IsValid())
            {
                path = Path.GetDirectoryName(path);
                if (path.IsValid()) path = AddPathSeparator(path);
            }

            return path;
        }
Example #5
0
 /// <summary>
 /// </summary>
 protected static String Format(String message = null, Error? error = null)
 {
     var _error = error.IsNull() ? Error.Default.GetDescription() : error.GetDescription();
     var _message = message.IsValid() ? message : _error;
     return String.Format("CSharpLess Exception: {0}", _message);
 }
Example #6
0
        /// <summary>
        /// Сохранение картинки
        /// </summary>
        public static String SaveImage(ImageSource imageSource, String filename = "")
        {
            SaveFileDialog dialog = new SaveFileDialog();

            dialog.Filter   = GetFilter(DialogFileTyp.Images, filename);
            dialog.FileName = filename.IsValid() ? filename : "image";

            if (dialog.ShowDialog() == true)
            {
                filename = dialog.FileName;

                Files.SaveImage(imageSource, filename, ImageTyp.Unknow);

                return filename;
            }

            return "";
        }