TFileStream問題 |
答題得分者是:jow
|
chubby
一般會員 發表:43 回覆:65 積分:21 註冊:2003-05-13 發送簡訊給我 |
ASt:= TFileStream.Create('a:\1111.txt',fmOpenRead);
BSt:= TFileStream.Create('a:\2222.txt',fmOpenRead);
TotSt:= TFileStream.Create('a:\tot.txt',fmCreate);
try
TotSt.CopyFrom(ASt,0);
TotSt.CopyFrom(BSt,0);
finally
TotSt.Free;
ASt.Free;
BSt.Free;
end;
合併後tot.txt 只有1111.txt 內容沒有2222.txt 為?
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
執行正常,沒有問題.
procedure TForm1.Button2Click(Sender: TObject); var ASt, BSt, TotSt: TFileStream; begin ASt:= TFileStream.Create('C:\1111.TXT',fmOpenRead); BSt:= TFileStream.Create('C:\2222.TXT',fmOpenRead); TotSt:= TFileStream.Create('C:\TOT.TXT',fmCreate); try TotSt.CopyFrom(ASt,0); TotSt.CopyFrom(BSt,0); finally TotSt.Free; ASt.Free; BSt.Free; end; end; |
chubby
一般會員 發表:43 回覆:65 積分:21 註冊:2003-05-13 發送簡訊給我 |
(1111.txt 3bytes ,2222.txt 4bytes) 合併tot.txt 7bytes
但用漢書看tot.txt行數沒有增加,經過jow 提醒用記事本開啟就有合併
但檔與檔間會不對稱 ?
如下:
21101410439000004493102234852678360022BX00304894000000000488100000000241
21101410439000004593102234852678360022BX00311326000000000903100000000451
21111003661000000193082329961522902284AW63013773000000015682100000007841 第2個檔案會往後一格
21111003661000000293092329961523897865BW54213134000000028571100000014291
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
你可以用ultraEdit或其他可檢視16進位碼的程式
看一下你說多出的資料到底是甚麼值,可能是
0x0D,0xOA吧. 你也可以用debug執行檔,將檔案dump出來看. C:\debug tot.txt
-d
0AEB:0100 41 41 41 41 41 41 41 41-41 41 0D 0A 42 42 42 42 AAAAAAAAAA..BBBB 0AEB:0110 42 42 42 42 42 42 0D 0A-26 2B 99 25 34 00 DA 0A BBBBBB.. |
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |