Z
zysunit
Unregistered / Unconfirmed
GUEST, unregistred user!
第一个难题:
Procedure TfolderFileZip.WriteHeader(Var HeaderStream:TMemoryStream;
var CompressDate:string; //压缩日期
var compressPathstr:string //压缩文件路径
);
begin
HeaderStream.Position :=0; //压缩日期开始写入位置
if Length(CompressDate) > 0 then
HeaderStream.WriteBuffer(CompressDate[1],10); //写压缩日期
HeaderStream.Position :=Length(CompressDate); //压缩文件路径开始写入位置
if Length(compressPathstr) > 0 then
HeaderStream.WriteBuffer(compressPathstr[1],Length(compressPathstr)); //写压缩文件路径
end;
Procedure TfolderFileZip.ReadHeader(Var HeaderStream:TMemoryStream;
var CompressDate:string; //压缩日期
var compressPathstr:string //压缩文件路径
);
begin
HeaderStream.Position :=0; //压缩日期开始读的位置
SetLength(CompressDate,10); //设置压缩日期长度
HeaderStream.ReadBuffer(CompressDate[1],10); //读压缩日期
HeaderStream.Position := Length(CompressDate); //压缩文件路径开始读的位置
SetLength(compressPathstr,Length(compressPathstr)); //设置压缩文件路径长度
HeaderStream.ReadBuffer(compressPathstr[1],Length(compressPathstr)) ; //读压缩文件路径
end;
上面是第一个过程WriteHeader是压缩文件时写文件头(2048个字节) , 其中两个变量:CompressDate 是知道长度的 而 compressPathstr 是不可预知长度的
而第二个过程是ReadHeader是解压缩时读文件头, 也是两个变量 我的问题是
SetLength(compressPathstr,Length(compressPathstr)) 这句中Length(compressPathstr) 怎么取得长度呢????!!!!!
第二个难题 :
对于一个自己定义压缩的压缩文件如*.xx,*.yy 我需要读取其中的文件(多个), 不想让人看见取出来的文件 该如何处理???
Procedure TfolderFileZip.WriteHeader(Var HeaderStream:TMemoryStream;
var CompressDate:string; //压缩日期
var compressPathstr:string //压缩文件路径
);
begin
HeaderStream.Position :=0; //压缩日期开始写入位置
if Length(CompressDate) > 0 then
HeaderStream.WriteBuffer(CompressDate[1],10); //写压缩日期
HeaderStream.Position :=Length(CompressDate); //压缩文件路径开始写入位置
if Length(compressPathstr) > 0 then
HeaderStream.WriteBuffer(compressPathstr[1],Length(compressPathstr)); //写压缩文件路径
end;
Procedure TfolderFileZip.ReadHeader(Var HeaderStream:TMemoryStream;
var CompressDate:string; //压缩日期
var compressPathstr:string //压缩文件路径
);
begin
HeaderStream.Position :=0; //压缩日期开始读的位置
SetLength(CompressDate,10); //设置压缩日期长度
HeaderStream.ReadBuffer(CompressDate[1],10); //读压缩日期
HeaderStream.Position := Length(CompressDate); //压缩文件路径开始读的位置
SetLength(compressPathstr,Length(compressPathstr)); //设置压缩文件路径长度
HeaderStream.ReadBuffer(compressPathstr[1],Length(compressPathstr)) ; //读压缩文件路径
end;
上面是第一个过程WriteHeader是压缩文件时写文件头(2048个字节) , 其中两个变量:CompressDate 是知道长度的 而 compressPathstr 是不可预知长度的
而第二个过程是ReadHeader是解压缩时读文件头, 也是两个变量 我的问题是
SetLength(compressPathstr,Length(compressPathstr)) 这句中Length(compressPathstr) 怎么取得长度呢????!!!!!
第二个难题 :
对于一个自己定义压缩的压缩文件如*.xx,*.yy 我需要读取其中的文件(多个), 不想让人看见取出来的文件 该如何处理???