請問一個AnsiString字元總共幾個Byte?? |
答題得分者是:brook
|
willchen
初階會員 發表:64 回覆:81 積分:29 註冊:2003-05-23 發送簡訊給我 |
|
gemi0305
版主 發表:81 回覆:564 積分:629 註冊:2003-05-11 發送簡訊給我 |
|
brook
資深會員 發表:57 回覆:323 積分:371 註冊:2002-07-12 發送簡訊給我 |
//存入檔案 void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString ss = "aaaaaa"; TMemoryStream *m = new TMemoryStream(); m->SetSize(ss.Length()); memcpy(m->Memory,ss.c_str(),ss.Length()); m->SaveToFile("C:\\T.TXT"); delete m; }用 Length()就知道幾個byte. |
gemi0305
版主 發表:81 回覆:564 積分:629 註冊:2003-05-11 發送簡訊給我 |
|
willchen
初階會員 發表:64 回覆:81 積分:29 註冊:2003-05-23 發送簡訊給我 |
但是我現在要做的是,存一個TXT檔,裡面有加密後的文字(AnsiString)與一般的AnsiString文字,如下
|
brook
資深會員 發表:57 回覆:323 積分:371 註冊:2002-07-12 發送簡訊給我 |
引言: 但是我現在要做的是,存一個TXT檔,裡面有加密後的文字(AnsiString)與一般的AnsiString文字,如下 math.exe @#$%#$%#$% ^^^^^^^^^^加密1. 用TStringList 的 LoadFromStream()看看, 但我覺得加密後的AnsiString 裡可能會有一些特殊字元如0x00或換行字元. 2. 建議在字串前加一個char或short來存此字串的長度. 假如每個字串少於255則用char 如 buf[0]存8, &buf[1]開始存 "math.exe"(共8個位元), 由此可算出下一個字串的長度是存在buf[9]=10, &buf[10]開始存"@#$%#$%#$%"(共10個位元), 之後也是如此類推. 3. 假如覺得第二種方法麻煩, 甘脆每行用80個位元儲存,如此要第幾行, 算一下就知道了. |
willchen
初階會員 發表:64 回覆:81 積分:29 註冊:2003-05-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |