procedure TForm1.Button1Click(Sender: TObject);
var
strmSource,strmDest:TMemoryStream;
f1, f2:string;
begin
f1 := 'c:\a.txt';
f2 := 'c:\b.txt';
//先读f1
strmSource:=TMemoryStream.Create;
strmSource.loadfromfile(f1);
//拷贝到strmdest
strmDest:=TMemoryStream.Create;
strmDest.copyfrom(strmSource,strmSource.size);
strmSource.clear;
//再读f1
strmSource.loadfromfile(f2);
//拷贝到strmdest
strmDest.seek(strmDest.size,soFromBeginning);
strmDest.copyfrom(strmSource,strmSource.size);
strmSource.free;
//这时strmDest里面便是两个文件合并后的内容了.将它保存为文件
strmDest.SaveToFile('c:\ab.txt');
strmDest.free;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
strmSource,strmDest:TMemoryStream;
f1, f2:string;
begin
f1 := 'c:\a.txt';
f2 := 'c:\b.txt';
//先读f1
strmSource:=TMemoryStream.Create;
strmSource.write(f1[1], length(f1));
//拷贝到strmdest
strmDest:=TMemoryStream.Create;
strmDest.copyfrom(strmSource,strmSource.size); //*********这里出现读错误, 何解?
strmSource.clear;
//再读f1
strmSource.write(f2[1], length(f2));
//拷贝到strmdest
strmDest.seek(strmDest.size,soFromBeginning);
strmDest.copyfrom(strmSource,strmSource.size);
strmSource.free;
//这时strmDest里面便是两个文件合并后的内容了.将它保存为文件
strmDest.SaveToFile('c:\ab.txt');
strmDest.free;
end;
end.
var
strmSource,strmDest:TMemoryStream;
f1, f2:string;
begin
f1 := 'c:\a.txt';
f2 := 'c:\b.txt';
//先读f1
strmSource:=TMemoryStream.Create;
strmSource.loadfromfile(f1);
//拷贝到strmdest
strmDest:=TMemoryStream.Create;
strmDest.copyfrom(strmSource,strmSource.size);
strmSource.clear;
//再读f1
strmSource.loadfromfile(f2);
//拷贝到strmdest
strmDest.seek(strmDest.size,soFromBeginning);
strmDest.copyfrom(strmSource,strmSource.size);
strmSource.free;
//这时strmDest里面便是两个文件合并后的内容了.将它保存为文件
strmDest.SaveToFile('c:\ab.txt');
strmDest.free;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
strmSource,strmDest:TMemoryStream;
f1, f2:string;
begin
f1 := 'c:\a.txt';
f2 := 'c:\b.txt';
//先读f1
strmSource:=TMemoryStream.Create;
strmSource.write(f1[1], length(f1));
//拷贝到strmdest
strmDest:=TMemoryStream.Create;
strmDest.copyfrom(strmSource,strmSource.size); //*********这里出现读错误, 何解?
strmSource.clear;
//再读f1
strmSource.write(f2[1], length(f2));
//拷贝到strmdest
strmDest.seek(strmDest.size,soFromBeginning);
strmDest.copyfrom(strmSource,strmSource.size);
strmSource.free;
//这时strmDest里面便是两个文件合并后的内容了.将它保存为文件
strmDest.SaveToFile('c:\ab.txt');
strmDest.free;
end;
end.
解决方案 »
- 问个基础问题如何编写当击窗体右上角的最小化时执行一个事件
- TTreeView 的问题
- 急求quick report362版,有的请与我联系或是发到我信箱里。
- 请帮小弟一把,又高分等着大家!
- 一个sizeof的结果问题。
- 如何通过ado的方式连接oracle和sql server2000数据库
- 怎样把自定义数据类型存入字段中
- 数据库字段为空的问题
- 我的机器是winXP,开发工具delphi7.0,office装的2003,死活不能调用excel。
- 做Delphi的工资太底了,如果我们集体罢工 那会有什么后果呢?大家讨论讨论
- rzCheckTree中,改变checked值回执行什么事件???急!
- ???
strmSource,strmDest:TMemoryStream;
f1, f2:string;
begin
f1 := 'c:\a.txt';
f2 := 'c:\b.txt';
//先读f1
strmSource:=TMemoryStream.Create;
strmSource.write(f1[1], length(f1));
//拷贝到strmdest
strmSource.Position := 0; //加上这句 strmDest:=TMemoryStream.Create;
strmDest.copyfrom(strmSource,strmSource.size); //*********这里出现读错误, 何解?
strmSource.clear;
//再读f1
strmSource.write(f2[1], length(f2)); strmSource.Position := 0; //还有这句
//拷贝到strmdest
strmDest.seek(strmDest.size,soFromBeginning);
strmDest.copyfrom(strmSource,strmSource.size);
strmSource.free;
//这时strmDest里面便是两个文件合并后的内容了.将它保存为文件
strmDest.SaveToFile('c:\ab.txt');
strmDest.free;
end;
procedure TMemoryStream.LoadFromStream(Stream: TStream);
var
Count: Longint;
begin
Stream.Position := 0;
Count := Stream.Size;
SetSize(Count);
if Count <> 0 then Stream.ReadBuffer(FMemory^, Count);
end;