2011-10-19 4 views
0

파일 이름이 바뀌 었는지 확인하려면 Csharp.Net fileSystemWatcher 클래스를 사용하고 있습니다. 파일 이름을 바꾸면 코드가 제대로 작동하고 알림을 제공하지만 이름이 바뀐 파일의 이전 이름을 찾을 수 없습니다. 'e.OldFullPath'를 사용하고 있지만 작동하지 않습니다. 나는 오류가 점점 오전 : 내 코드 filerenamed 이벤트에서 오래된 파일 이름 받기

oldFullPath

에 대한 정의가 포함되어 있지 않습니다

private void watcher_FileRenamed(object sender, System.IO.FileSystemEventArgs e) 
{ 
    Console.WriteLine("File " + e.OldFullPath + " [Changed to] " + e.FullPath); 
} 

저를 도와주세요. 감사합니다. .

답변

0

문제는 디렉토리를 변경하지 않고 이름 만 변경했기 때문입니다.
예전 이름은 e.OldName, 새 이름은 e.Name으로 바꾸어보십시오.

e.OldFullPath은 복사 또는 이동과 같은 다른 작업에 사용됩니다.

+0

@Smart : 내 대답이 문제를 해결 했습니까? – Marco

+0

감사합니다. 디렉토리를 바꿈으로써 정상적으로 작동합니다. 디렉토리를 System.IO.RenamedEventArgs로 변경했습니다. –

+0

@SmartBoy : 내 대답이 도움이 되었다면 업 그레 이드 및/또는 [수락] (http://www.google.it/url?sa=t&rct=j&q=stackoverflow% 20accept % 20answer & source = web & cd = 1 & ved = 0CCAQFjAA & url = http % 3A % 2F % 2Fmeta.stackoverflow.com % 2Fquestions % 2F5234 % 2 대답을 수락하는 대답 & GR2hTsPxGo_EsgaHv9nkAg & usg = AFQjCNFydg7FnTBZP4nXWXx2wWflwYQ80A) 감사 – Marco