我目前正在開發一個工具,它將從前一天查找所有文件,並將它們從同一個服務器上的一個文件夾移動到另一個文件夾。我沒有遇到許可問題,但我陷入了IF語句。一旦應用程序找到一個文件,移動到另一個文件夾進行進一步處理。我的問題是,我無法找到只有昨天的日期,並移動它們的所有文件。我在下面提供了我的代碼,它幾乎在那裏(或者至少這是我告訴自己)。提前感謝您的幫助。只檢索前一天的文件
private void Form1_Load(object sender, EventArgs e)
{
DateTime past = DateTime.Today.AddDays(-1);
txtSourceFolderCount.Text = past.ToShortDateString();
//efile originally start here
var sourceDir = @"\\DIS2\EFilingXML\Archive";
//application moves to archive
var destDir = @"\\DIS2\EFilingXML";
//only XML files are accepted
//var pattern = "*.xml";
DirectoryInfo source = new DirectoryInfo(sourceDir);
// Get info of each file into the directory
foreach (FileInfo fi in source.GetFiles())
{
var creationTime = fi.LastWriteTime;
if (creationTime == past && creationTime < DateTime.Today)
{
fi.MoveTo(Path.Combine(destDir, fi.ToString()));
}
}
}
而與此代碼是你的問題? (你忘了指定你看到的行爲...)也許你想檢查'dt'是否在某個'DateTime'範圍內(比如'dt = today.AddDays(-1)')? –
@AlexeiLevenkov謝謝你。接得好。我以爲我做到了,但我沒有。就我想要做的事情而言,其他一切看起來是否正確? – clerktech
可能還會檢查您的事件日誌,看看是否有任何與權限相關的錯誤。 – 2013-10-03 17:43:13