Example #1
0
        /// <summary>
        /// Выполняет копирование файла в указанный каталог.
        /// </summary>
        /// <param name="pathFrom">Путь к копируемому файлу.</param>
        /// <param name="pathTo">Путь к каталогу, который будет содержать скопированный файл.</param>
        public void CopyFile(string pathFrom, string pathTo)
        {
            byte[] data = FileSystem.ReadFile(pathFrom);

            FileSystem.Directory resultDirectory = FileSystem.OpenDirectory(pathTo);

            string fileFullName = Utils.GetFileName(pathFrom);
            string path         = pathTo + "/" + fileFullName;

            if (resultDirectory.Find(fileFullName) == null)
            {
                FileSystem.CreateFile(path);
                FileSystem.WriteFile(path, data);
            }
        }
Example #2
0
        /// <summary>
        /// Выполняет копирование каталога в указанный каталог.
        /// При копировании каталога также копируется его содержимое.
        /// </summary>
        /// <param name="pathFrom">Путь к копируемому каталогу.</param>
        /// <param name="pathTo">Путь к каталогу, который будет содержать скопированный каталог.</param>
        public void CopyDirectory(string pathFrom, string pathTo)
        {
            FileSystem.Directory directory       = FileSystem.OpenDirectory(pathFrom);
            FileSystem.Directory resultDirectory = FileSystem.OpenDirectory(pathTo);

            if (resultDirectory.Find(directory.FullName) == null)
            {
                FileSystem.CreateDirectory(pathTo + "/" + directory.FullName);
            }

            for (int i = 2; i < directory.Count; i++)
            {
                MetaFile metaFile = directory[i];

                if (metaFile is FileSystem.Directory)
                {
                    CopyDirectory(pathFrom + "/" + metaFile.FullName, pathTo + "/" + directory.FullName);
                }
                else
                {
                    CopyFile(pathFrom + "/" + metaFile.FullName, pathTo + "/" + directory.FullName);
                }
            }
        }