TMemoryStream轉成String問題 |
答題得分者是:william
|
iamjsn
初階會員 ![]() ![]() 發表:78 回覆:95 積分:44 註冊:2002-08-16 發送簡訊給我 |
|
william
版主 ![]() ![]() ![]() ![]() ![]() 發表:66 回覆:2535 積分:3048 註冊:2002-07-11 發送簡訊給我 |
I think you would better store the size. e.g.
var len: longint; s: string; MemStream: TMemoryStream; { write } len := length(s); MemStream.Write(len,SizeOf(len)); if len>0 then MemStream.Write(s[1],len); { read } MemStream.Read(len,SizeOf(len)); SetLength(s,len); if len>0 then MemStream.Read(s[1],len); |
iamjsn
初階會員 ![]() ![]() 發表:78 回覆:95 積分:44 註冊:2002-08-16 發送簡訊給我 |
想再請問一下william,為什麼要寫MemStream.Write(len,SizeOf(len));//有什麼特別的意思嗎?謝謝
var len: longint; s: string; MemStream: TMemoryStream; { write } len := length(s); MemStream.Write(len,SizeOf(len));//為什麼要寫這一行呢?謝謝 if len>0 then MemStream.Write(s[1],len); { read } MemStream.Read(len,SizeOf(len)); SetLength(s,len); if len>0 then MemStream.Read(s[1],len); |
iamjsn
初階會員 ![]() ![]() 發表:78 回覆:95 積分:44 註冊:2002-08-16 發送簡訊給我 |
|
iamjsn
初階會員 ![]() ![]() 發表:78 回覆:95 積分:44 註冊:2002-08-16 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |