Did cleanup of code base for .NET core version.
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
#region Using Statements
|
||||
|
||||
using System;
|
||||
using System.IO;
|
||||
|
||||
#endregion
|
||||
|
||||
namespace OneDriveArchiver
|
||||
@@ -8,21 +10,18 @@ namespace OneDriveArchiver
|
||||
public static class IoHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// Archives a one drive file. It takes the file creation date and month,
|
||||
/// creates the necessary folder structure (if necessary) i.e. Year\Month and
|
||||
/// moves the file to the (new) target folder. The Sync engine of OneDrive then
|
||||
/// will sync the changes being made back to the cloud. Base Path is the path where
|
||||
/// the file was found. So the subfolder will start in the same directory.
|
||||
/// Archives a one drive file. It takes the file creation date and month,
|
||||
/// creates the necessary folder structure (if necessary) i.e. Year\Month and
|
||||
/// moves the file to the (new) target folder. The Sync engine of OneDrive then
|
||||
/// will sync the changes being made back to the cloud. Base Path is the path where
|
||||
/// the file was found. So the subfolder will start in the same directory.
|
||||
/// </summary>
|
||||
/// <param name="filename">Filename</param>
|
||||
public static void ArchiveOneDriveFile(string filename)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrEmpty(filename))
|
||||
{
|
||||
throw new ArgumentException("filename cannot be null.");
|
||||
}
|
||||
if (string.IsNullOrEmpty(filename)) throw new ArgumentException("filename cannot be null.");
|
||||
|
||||
// do a check if the file is empty...
|
||||
var fi = new FileInfo(filename);
|
||||
@@ -32,25 +31,20 @@ namespace OneDriveArchiver
|
||||
File.Delete(filename);
|
||||
return;
|
||||
}
|
||||
|
||||
var dateModified = File.GetLastWriteTime(filename);
|
||||
var fileMonth = dateModified.Month.ToString("D2");
|
||||
var fileYear = dateModified.Year.ToString();
|
||||
var basePath = Path.GetDirectoryName(filename);
|
||||
var fileNameWithOutPath = Path.GetFileName(filename);
|
||||
|
||||
|
||||
// check if we have to create either year or month folder...
|
||||
// start with parent year folder...
|
||||
var fullYearFolderPath = Path.Combine(basePath ?? throw new InvalidOperationException(), fileYear);
|
||||
var fullMonthFolderPath = Path.Combine(Path.Combine(basePath, fileYear), fileMonth);
|
||||
if (!Directory.Exists(fullYearFolderPath))
|
||||
{
|
||||
Directory.CreateDirectory(fullYearFolderPath);
|
||||
}
|
||||
if (!Directory.Exists(fullYearFolderPath)) Directory.CreateDirectory(fullYearFolderPath);
|
||||
// then month...
|
||||
if (!Directory.Exists(fullMonthFolderPath))
|
||||
{
|
||||
Directory.CreateDirectory(fullMonthFolderPath);
|
||||
}
|
||||
if (!Directory.Exists(fullMonthFolderPath)) Directory.CreateDirectory(fullMonthFolderPath);
|
||||
|
||||
// then move the file...
|
||||
File.Move(filename, Path.Combine(fullMonthFolderPath, fileNameWithOutPath));
|
||||
|
||||
Reference in New Issue
Block a user