전날부터 모든 파일을 찾아 한 폴더에서 다른 폴더로 이동하는 도구를 현재 개발하고 있습니다. 나는 허가 문제에 부딪치지 않고있다. 그러나 나는 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 <오늘 && dt> = today.AddDays (-1)') 확인하고 싶습니까? –
@AlexeiLevenkov 감사합니다. 좋은 캐치. 나는 한 것이라고 생각했지만하지 않았습니다. 내가 원했던 것까지 그 밖의 모든 것이 정확하다고 보는가? – clerktech
이벤트 로그를 검사하여 사용 권한 관련 오류가 있는지 확인할 수도 있습니다. –