コード例 #1
0
ファイル: Program.cs プロジェクト: damdirt/DJI_FileImporter
        private static void CopyFile(FileDetail file, String destinationFolderPath, ref Int32 copiedFilesCount)
        {
            var parentFolderName = file.CreationDate.ToString(ConfigurationManager.AppSettings["dateFolderFormat"]);
            var parentFolderPath = Path.Combine(destinationFolderPath, parentFolderName);

            if (!Directory.Exists(parentFolderPath))
            {
                Directory.CreateDirectory(parentFolderPath);
            }

            var destinationFilePath = Path.Combine(parentFolderPath, file.FileName);

            // check if file already exists
            if (Program.IsFileExist(destinationFilePath))
            {
                Console.WriteLine($"File {destinationFilePath} already exists. Copy aborted for this file.");
                return;
            }
            Console.WriteLine($"...Copying file {file.FilePath} to {destinationFilePath}...");
            try
            {
                File.Copy(file.FilePath, destinationFilePath);
                ++copiedFilesCount;
                return;
            }
            catch (Exception e)
            {
                Console.WriteLine($"An error occured during copying file {file.FilePath} to {destinationFilePath}");
                Console.WriteLine("Error message:");
                Console.WriteLine(e.Message);
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: damdirt/DJI_FileImporter
        internal static IEnumerable <FileDetail> GetMediaFiles(String path)
        {
            var mediaFolderName = ConfigurationManager.AppSettings["mediaFolderName"];

            path = Path.Combine(path, mediaFolderName);

            List <FileDetail>    fileDetails = new List <FileDetail>();
            IEnumerable <String> filePaths   = Directory.GetFiles(path);

            foreach (String filePath in filePaths)
            {
                FileDetail fileDetail = new FileDetail();
                fileDetail.CreationDate = File.GetCreationTime(filePath);
                fileDetail.FilePath     = filePath;
                fileDetail.FileName     = Path.GetFileName(filePath);

                fileDetails.Add(fileDetail);
            }

            return(fileDetails);
        }