add fixedfilemove
This commit is contained in:
parent
37647ebbce
commit
72ae016692
|
|
@ -46,11 +46,9 @@ public static class TextLineRemover
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Delete original file
|
|
||||||
GlobalFuncs.FixedFileDelete(filename);
|
|
||||||
|
|
||||||
// ... and put the temp file in its place.
|
//FixedFileMove deletes the original file and moves the temp file in.
|
||||||
File.Move(tempFilename, filename);
|
GlobalFuncs.FixedFileMove(tempFilename, filename, true);
|
||||||
|
|
||||||
// Final calculations
|
// Final calculations
|
||||||
DateTime endTime = DateTime.Now;
|
DateTime endTime = DateTime.Now;
|
||||||
|
|
|
||||||
|
|
@ -593,10 +593,7 @@ public class GlobalFuncs
|
||||||
{
|
{
|
||||||
if (overwrite && overwritewarning)
|
if (overwrite && overwritewarning)
|
||||||
{
|
{
|
||||||
DialogResult box = MessageBox.Show("A file with a similar name was detected in the directory as '" + dest +
|
if (ShowOverrideWarning(dest) == DialogResult.No)
|
||||||
"'.\n\nWould you like to override it?", "Novetus - Override Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
|
|
||||||
|
|
||||||
if (box == DialogResult.No)
|
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -618,6 +615,44 @@ public class GlobalFuncs
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void FixedFileMove(string src, string dest, bool overwrite, bool overwritewarning = false)
|
||||||
|
{
|
||||||
|
if (!File.Exists(dest))
|
||||||
|
{
|
||||||
|
File.SetAttributes(src, FileAttributes.Normal);
|
||||||
|
File.Move(src, dest);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (overwrite)
|
||||||
|
{
|
||||||
|
if (overwritewarning)
|
||||||
|
{
|
||||||
|
if (ShowOverrideWarning(dest) == DialogResult.No)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
FixedFileDelete(dest);
|
||||||
|
File.SetAttributes(src, FileAttributes.Normal);
|
||||||
|
File.Move(src, dest);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
throw new IOException("Cannot create a file when that file already exists. FixedFileMove cannot override files with overwrite disabled.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static DialogResult ShowOverrideWarning(string dest)
|
||||||
|
{
|
||||||
|
DialogResult box = MessageBox.Show("A file with a similar name was detected in the directory as '" + dest +
|
||||||
|
"'.\n\nWould you like to override it?", "Novetus - Override Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
|
||||||
|
|
||||||
|
return box;
|
||||||
|
}
|
||||||
|
|
||||||
//modified from the following:
|
//modified from the following:
|
||||||
//https://stackoverflow.com/questions/28887314/performance-of-image-loading
|
//https://stackoverflow.com/questions/28887314/performance-of-image-loading
|
||||||
//https://stackoverflow.com/questions/2479771/c-why-am-i-getting-the-process-cannot-access-the-file-because-it-is-being-u
|
//https://stackoverflow.com/questions/2479771/c-why-am-i-getting-the-process-cannot-access-the-file-because-it-is-being-u
|
||||||
|
|
@ -1850,6 +1885,8 @@ public class GlobalFuncs
|
||||||
return foundFiles.ToArray();
|
return foundFiles.ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//https://stackoverflow.com/questions/66667263/i-want-to-remove-special-characters-from-file-name-without-affecting-extension-i
|
//https://stackoverflow.com/questions/66667263/i-want-to-remove-special-characters-from-file-name-without-affecting-extension-i
|
||||||
//https://stackoverflow.com/questions/3218910/rename-a-file-in-c-sharp
|
//https://stackoverflow.com/questions/3218910/rename-a-file-in-c-sharp
|
||||||
public static void RenameFileWithInvalidChars(string path)
|
public static void RenameFileWithInvalidChars(string path)
|
||||||
|
|
@ -1857,8 +1894,9 @@ public class GlobalFuncs
|
||||||
string pathWithoutFilename = Path.GetDirectoryName(path);
|
string pathWithoutFilename = Path.GetDirectoryName(path);
|
||||||
string fileName = Path.GetFileName(path);
|
string fileName = Path.GetFileName(path);
|
||||||
fileName = Regex.Replace(fileName, @"[^\w-.'_! ]", "");
|
fileName = Regex.Replace(fileName, @"[^\w-.'_! ]", "");
|
||||||
|
string finalPath = pathWithoutFilename + "\\" + fileName;
|
||||||
|
|
||||||
File.Move(path, pathWithoutFilename + "\\" + fileName);
|
FixedFileMove(path, finalPath, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if LAUNCHER || CMD || URI
|
#if LAUNCHER || CMD || URI
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue