로 추출 후 나는 .rar
파일을 추출 lib 디렉토리 Nunrar
site을 사용 :삭제 nunrar
RarArchive.WriteToDirectory(fs.Name, Path.Combine(@"D:\DataDownloadCenter", path2), ExtractOptions.Overwrite);
압축 해제는 잘 작동하지만 난 추출물이 작업은 원래의 압축을 삭제할 수 없습니다 후 파일이 다른 프로세스에 의해 사용되기 때문에
System.IO.File.Delete(path);
파일 정공 기능 :
try
{
FileStream fs = File.OpenRead(path);
if(path.Contains(".rar")){
try
{
RarArchive.WriteToDirectory(fs.Name, Path.Combine(@"D:\DataDownloadCenter", path2), ExtractOptions.Overwrite);
fs.Close();
}
catch { }
}
catch { return; }
finally
{
if (zf != null)
{
zf.IsStreamOwner = true; // Makes close also shut the underlying stream
zf.Close(); // Ensure we release resources
}
}
try
{
System.IO.File.Delete(path);
}
catch { }
압축 파일을 압축 해제 한 후 삭제할 수 있습니까?
'fs' ('fs.Name'을 (를) 사용하는 곳)의 유형은 무엇입니까? 라이브러리에 익숙하지 않지만 'FileStream'을 열고 닫지 않은 것 같습니다. – keyboardP
그것은'FileStream'이고 삭제 작업 이전에'fs.Close()'를 수행했습니다 –
내 편집 plz를 참조하십시오 –