1、AnsiString 使用大全精品文档AnsiString 使用大全: 顾名思义,就是利用AnsiString来处理相关的各种问题。来看看吧,一定让你受益匪浅!/Ansistring 转 char void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = 哈哈; char *chr = Test.c_str(); /char转Ansistring #include void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString str = Sample
2、; char chrMAX_PATH; strcpy( chr , str.c_str() ); /Bool转AnsiString void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test=BoolToStr(CheckBox1-Checked); /Ansistring转bool void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test=-1 CheckBox1-Checked= StrToBool( Test ); /int转ansis
3、tring void _fastcall TForm1:Button1Click(TObject *Sender) int i = 123; AnsiString str = IntToStr( i ); /AnsiString转double void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = 123; long double d = StrToFloat( Test ); /double转AnsiString void _fastcall TForm1:Button1Click(TObject *Send
4、er) double d = 123.456; AnsiString str = FloatToStr( d ); /double转AnsiString并四舍五入 void _fastcall TForm1:Button1Click(TObject *Sender) long double d = 123.456121212; AnsiString str = FloatToStrF( d , ffFixed ,5 , 4 ); /说明FloatTostrF里5代表从第几个数字的后一位开始四舍五入,4代表取4位小数。 /执行后得到str是123.4600。:roll: /double转Ansi
5、String使用类似vb的format函数 void _fastcall TForm1:Button1Click(TObject *Sender) double d = 123.456; AnsiString str = FormatFloat( 000000.00 , d ); /得到 000123.45,当然你能使用# . , ; E+ E- xx等符号,你自己试试 :wink: /AnsiString转Tclor型 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = 0x00FF8080; TColo
6、r Col = StringToColor( Test ); /Tcolor转AnsiString void _fastcall TForm1:Button1Click(TObject *Sender) TColor Col = 0x00FF8080; AnsiString str = ColorToString( Col ); /消除AnsiString 中的一部分字符串 代码: void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; int First = 3; / 消除制定开头 int L
7、ength = 2; / 消除制定长度 AnsiString Dstr = Test.Delete( First , Length ); /得到ABEF /在AnsiString 中插入字符串 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; AnsiString Ins = 12345; / 插入串 int Pos = 3; / 在哪插 AnsiString Istr = Test.Insert( Ins , Pos ); /得到AB12345CDEF /取得ansi某一位字符 void
8、 _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; AnsiString Npos = Test3;/得到C /取得AnsiString里最后一个字符 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; char *Lstr = Test.AnsiLastChar();/得到F /取出AnsiString字符,这个类似vb的mid函数! void _fastcall TForm1:Button1C
9、lick(TObject *Sender) AnsiString Test = ABCDEF; int First = 3; / 3开始取 int Length = 2; / 取2位 AnsiString Getstr = Test.SubString( First , Length ); /得到CD /AnsiString的字母比较 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; AnsiString Sample = abcdef; int Result = Test.AnsiCom
10、pare( Sample ); /返回1,不同!分大小写。 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; AnsiString Sample = abcdef; int Result = Test.AnsiCompareIC( Sample ); /返回0,相同!没有分大小写,哈哈 /在AnsiString中寻找字符 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; AnsiStr
11、ing Sample = E; int Result = Test.Pos( Sample ); /返回5,如果你写Samplehaha,就返回0,未找到,哈哈 /在AnsiString中找字符串,和上一个类似 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCDEF; AnsiString Sample = EF; int Result = Test.Pos( Sample ); /返回5,即E字符的位置 /判断字符串长度,类似vb的len void _fastcall TForm1:Button
12、1Click(TObject *Sender) AnsiString Test = 拿金币来; int Len = Test.Length(); /返回8 /取得字符串,类似vb的left void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = 小苹果然看了这篇文章; AnsiString SLstr = Test.SetLength(6); /得到小苹果 /检测双字节字串 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString ChkStr
13、 = 你好; int ChkPos = 1 ; if ( ByteType( ChkStr , ChkPos ) = mbSingleByte ) Edit1-Text=0; else Edit1-Text=1; /返回1,如果你写ChkStrfxxk,就返回0 /检测空字符串 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ; bool chk = Test.IsEmpty(); if (chk ) Edit1-Text=1;/返回1 /全部变小写vs全部变大写 void _fastcall TFor
14、m1:Button1Click(TObject *Sender) AnsiString Test = ABCdef; AnsiString Lstr = Test.LowerCase(); 代码: void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = ABCdef; AnsiString Ustr = Test.UpperCase(); /类似vb中Trim 的去空格函数 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test =
15、 ABCDEF ; AnsiString TLstr = Test.TrimLeft(); AnsiString TRstr = Test.TrimRight(); AnsiString Tstr = Test.Trim(); /不过,这个处理不了全角的空格 代码: AnsiString _fastcall TForm1:TrimStr( AnsiString Tm , AnsiString LR ) / LR L:左除去 R:右除去 B:dou除去 int len; / 左除去 if ( LR = L | LR = B ) len = Tm.Length(); while ( Tm.SubS
16、tring(1,1) = | Tm.SubString(1,2) = ) / 半角除去 if ( Tm.SubString(1,1) = ) Tm = Tm.SubString(2,len); len = Tm.Length(); / 全角除去 else if ( Tm.SubString(1,2) = ) Tm = Tm.SubString(3,len); len = Tm.Length(); / 右除去 if ( LR = R | LR = B ) len = Tm.Length(); while ( Tm.SubString(len,1) = | Tm.SubString(len-1,2
17、) = ) / 半角除去 if ( Tm.SubString(len,1) = ) len = Tm.Length(); Tm = Tm.SubString(1,len-1); len = Tm.Length(); / 全角除去 else if ( Tm.SubString(len-1,2) = ) len = Tm.Length(); Tm = Tm.SubString(1,len-2); len = Tm.Length(); return Tm; void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Test = 拳脚
18、; AnsiString Ret = TrimStr(Test,B) /相同字符重复输入 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Soc = AnsiString:StringOfChar( * , 100 ); Edit1-Text=Soc ;/显示100个* /字符串替换 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Str = Borland C+ Builder is free; AnsiString From = C+
19、Builder; AnsiString To = Delphi; AnsiString Result; Result = StringReplace( Str, From, To, TReplaceFlags() rfReplaceAll rfIgnoreCase ); /Text=Han; /半角变全角 void _fastcall TForm1:Button1Click(TObject *Sender) AnsiString Han = 1234567890; int Len = Han.Length(); char bufMAX_PATH; ZeroMemory( buf, sizeof( buf ) ); LCMapString( GetUserDefaultLCID(), LCMAP_FULLWIDTH, Han.c_str(), Len, buf, sizeof( buf ) ); AnsiString Zen = AnsiString( buf ); 收集于网络,如有侵权请联系管理员删除