請問遇到Unicode字元可否判斷? |
|
mcho_60461
一般會員 ![]() ![]() 發表:16 回覆:23 積分:7 註冊:2006-07-31 發送簡訊給我 |
|
kmlsoft
一般會員 ![]() ![]() 發表:1 回覆:5 積分:6 註冊:2003-11-07 發送簡訊給我 |
|
mcho_60461
一般會員 ![]() ![]() 發表:16 回覆:23 積分:7 註冊:2006-07-31 發送簡訊給我 |
|
Coffee
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:31 回覆:878 積分:561 註冊:2006-11-15 發送簡訊給我 |
|
John Wong
初階會員 ![]() ![]() 發表:1 回覆:35 積分:32 註冊:2004-09-18 發送簡訊給我 |
|
mcho_60461
一般會員 ![]() ![]() 發表:16 回覆:23 積分:7 註冊:2006-07-31 發送簡訊給我 |
|
John Wong
初階會員 ![]() ![]() 發表:1 回覆:35 積分:32 註冊:2004-09-18 發送簡訊給我 |
你可以直接使用以下程式測試是否有widechar.
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, TntStdCtrls; type TForm1 = class(TForm) TntEdit1: TTntEdit; TntButton1: TTntButton; procedure TntButton1Click(Sender: TObject); private { Private declarations } function hasWideChar(WS: WideString): Boolean; public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} function TForm1.hasWideChar(WS: WideString): Boolean; var I: Integer; begin Result := False; for I := 1 to Length(WS) do begin if Cardinal(WS[I]) > 255 then begin Result := True; Exit; end; end; end; procedure TForm1.TntButton1Click(Sender: TObject); begin if hasWideChar(TntEdit1.Text) then ShowMessage('yes') else ShowMessage('No'); end; end. |
mcho_60461
一般會員 ![]() ![]() 發表:16 回覆:23 積分:7 註冊:2006-07-31 發送簡訊給我 |
|
mcho_60461
一般會員 ![]() ![]() 發表:16 回覆:23 積分:7 註冊:2006-07-31 發送簡訊給我 |
|
jasper_dale
初階會員 ![]() ![]() 發表:2 回覆:48 積分:35 註冊:2005-09-19 發送簡訊給我 |
<textarea cols="60" rows="10" class="delphi" name="code">uses TntSysUtils;
procedure TForm1.TntButton1Click(Sender: TObject); begin if IsWideStringMappableToAnsi(TntEdit1.Text) then ShowMessage('Ansi') else ShowMessage('Unicode'); end; </textarea>
------
{"name":{["賈氏柏"]}} |
mcho_60461
一般會員 ![]() ![]() 發表:16 回覆:23 積分:7 註冊:2006-07-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |