zip 아카이브에서 파일을 (= 오래된 것을 삭제하고 새로 추가하는) 델파이 XE2/XE3 표준 System.Zip 유닛으로 대체하고 싶습니다. 그러나 대체/삭제 방법은 없습니다. 누구든지 모든 파일을 추출하지 않고 새로운 아카이브에 추가 할 필요없이 어떻게 달성 할 수 있었는지 생각할 수 있습니까?Delphi XE2 TZipFile : zip 아카이브의 파일 바꾸기
나는이 코드를 가지고 있지만, 그것은 이미의 경우는 한번 더 "document.txt"추가 :
var
ZipFile: TZipFile;
SS: TStringStream;
const
ZipDocument = 'E:\document.zip';
begin
ZipFile := TZipFile.Create; //Zipfile: TZipFile
SS := TStringStream.Create('hello');
try
if FileExists(ZipDocument) then
ZipFile.Open(ZipDocument, zmReadWrite)
else
ZipFile.Open(ZipDocument, zmWrite);
ZipFile.Add(SS, 'document.txt');
ZipFile.Close;
finally
SS.Free;
ZipFile.Free;
end;
end;
참고 : 나는 (그 일을 행한) 전에 TPAbbrevia를 사용하지만, 내가 좋아하는 것 지금 델파이의 Zip 장치를 사용합니다. 그러니 "다른 도서관 이용"과 같은 대답을하지 마십시오. 고맙습니다.
. 내장 된 ZIP 라이브러리는 해당 기능을 지원하지 않습니다. –
누군가가 해킹을 작성했을 수도 있습니다. – oxo
Abbrevia를 사용하지 않는 이유는 무엇입니까? 나는 그것이 아주 좋은 것이라고 들었다. –