命名標準,我們有來自第三方供應商的過程砸銷售和invetory數據日常生活,並可能有以下任何一種情況下檢查文件是否存在,並有權利在C#
刪除正確的文件。 (命名標準:test.xls)
刪除正確的文件,但沒有遵循正確的命名標準。 (其他 名稱可能是test_mmddyyyy或testmmddyyyy)
- 沒有文件丟失。
我試圖建立一個圍繞這些場景我的邏輯,並停留在如何當文件存在,但沒有合適的命名標準,並檢查此條件和更改文件的名稱,以建立自己的邏輯適當的命名標準。
public void Main()
{
try
{
string filefullpathname = @"C:\Temp\test.xls";
if (File.Exists(filefullpathname) == false)
{
Console.WriteLine("File does not exist in the path");
}
// file exists but right naming standard not followed (Other names could be test_mmddyyyy or testmmddyyyy)
// how to check for this condition and change the name of the file to the naming standard
else
{
string dirname = @"C:\Temp\";
DirectoryInfo directory = new DirectoryInfo(dirname);
string filepartialname = "test";
FileInfo[] fileindirectory = directory.GetFiles(filepartialname + "*");
foreach (FileInfo filename in fileindirectory)
{
string fullname = filename.FullName;
bool ind = Path.HasExtension(fullname);
if (ind == false)
{
File.Move(fullname, directory + filepartialname + ".xls");
}
else
{
File.Move(fullname, directory + filepartialname + ".xls");
}
}
}
Dts.TaskResult = (int)ScriptResults.Success;
}
catch (Exception error)
{
Console.WriteLine(error);
}
}
你能舉一個具體的例子,請?文件名是什麼常數,並且是你提到的唯一可能的格式的3種格式? – Mat
我會從檢查文件夾中文件的日期開始,所以通過減少日期並獲取第一個文件。 :string filename = new DirectoryInfo(@「C:\ Temp」)。GetFiles(「*。xls」)。OrderByDescending(x => x.LastWriteTime).FirstOrDefault()。FullName; – jdweng
「測試」文件的名稱是恆定的,每天只有一個文件,並且每當自動作業失敗時,名稱和擴展名將更改爲「test_mmddyyyy.zip」,「testmmddyyyy.zip」,「test_mmddyyyy .xls「,」testmmddyyyy.xls「。 – PVB