全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1860
推到 Plurk!
推到 Facebook!

AnsiString在XE5,chr($81)以上值會變成chr($3F)??

答題得分者是:herbert2
jackiemi2_seed
中階會員


發表:37
回覆:97
積分:76
註冊:2006-09-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2014-03-12 09:25:54 IP:118.163.xxx.xxx 訂閱
下面語法,在Delphi 7上會顯示80 81 82
但在XE5 上是顯示 80 3F 3F
AnsiString在XE5只支援到chr($80)???


[code delphi]
var ls_send:string;
chr_temp:string;
i:integer;
la_string:ansistring;
begin

ls_send:=chr(strtoint('$80')) chr(strtoint('$81')) chr(strtoint('$82'));
la_string:=AnsiString(ls_send);

for i := 1 to Length(la_string) do begin
chr_temp:=chr_temp inttohex(BYTE(la_string[i]),2) ' ';
end;

showmessage(chr_temp);
[/code]

------
OS : Win 7 pro
Program : Delphi 7
DataBase : Ms Sql 2008
herbert2
尊榮會員


發表:58
回覆:640
積分:894
註冊:2004-04-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2014-03-12 12:54:41 IP:202.39.xxx.xxx 訂閱
請注意:從 2009 版起,String 已被默認為是 UnicodeString 而非 AnsiString。
編輯記錄
herbert2 重新編輯於 2014-03-12 13:03:08, 註解 無‧
系統時間:2024-04-26 5:12:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!