Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизTZipFile Найти похожие ветки
← →
novichek (2012-04-22 00:02) [0]делаю так:
function UnZipFile(sourceFile, destPath: String): Boolean;
var
ZipFile: TZipFile;
begin
ZipFile := TZipFile.Create;
try
if ZipFile.IsValid(sourceFile) then begin
ZipFile.ExtractZipFile(sourceFile, destPath);
ZipFile.Close;
result:= true;
end;
finally
ZipFile.Free;
end;
end;
при распаковке файлов, имена которых в кириллице, получаю иероглифы.. или неверно заголовок zip файла читает или ещё что никак не пойму...
← →
Cobalt © (2012-04-22 00:35) [1]Вариант 1) получи последнюю версию компонента.
Вариант 2) оттрассируй по исходникам и найди где некорректно преобразуется имя файла.
Ну и, наконец, какая версия компонента и какая версия Дельфи? Ты ж не оплатил работу телепаторов.
← →
novichek (2012-04-22 00:38) [2]пробую на DelphiXE2
подскажие как можно внести изменения в system.zip.pas что бы компилятор их подхватил?
а то dcu сразу подключает..
не могу вообще понять, в lib\win32\debug удаляю этот dcu - один фиг компилит без моего изменного pas. где туплю?
← →
novichek (2012-04-22 00:39) [3]да, это встроенный компонент в delphiXE2
← →
novichek (2012-04-22 00:41) [4]хочу поковырять тут:
procedure TZipFile.ReadCentralHeader;
...
if LHeader.FileNameLength > 0 then
begin
SetLength(LHeader.FileName, LHeader.FileNameLength);
if (LHeader.Flag and (1 SHL 11)) <> 0 then
SetCodepage(LHeader.FileName, 65001, False)
else
// SetCodepage(LHeader.FileName, 437, False); >> было это
SetCodepage(LHeader.FileName, 866, False);
VerifyRead(FStream, LHeader.FileName[1], LHeader.FileNameLength);
end;
← →
Ega23 © (2012-04-22 00:48) [5]
> function UnZipFile(sourceFile, destPath: String): Boolean;function UnZipFile(sourceFile, destPath: AnsiString): Boolean;
?
← →
novichek (2012-04-22 00:49) [6]о, переименовал system.zip.pas, подключил модуль к проекту, изменил на SetCodepage(LHeader.FileName, 866, False); и всё заработало..
странно что не сделали поддержку кодовой страницы..
← →
novichek (2012-04-22 00:49) [7]Ega23 ©, да тут не в имени архива проблема а проблема то что внутри..
← →
Германн © (2012-04-22 01:47) [8]
> Ega23 ©, да тут не в имени архива проблема а проблема то
> что внутри
Эт точно. Проблема в мозгах. :)
← →
Плохиш © (2012-04-23 11:02) [9]Мне описание у разработчика понравилось
http://docwiki.embarcadero.com/VCL/XE2/en/System.Zip.TZipFile
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.062 c