《AnsiString 使用大全讲课稿.doc》由会员分享,可在线阅读,更多相关《AnsiString 使用大全讲课稿.doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流AnsiString 使用大全【精品文档】第 9 页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 *Send
2、er) AnsiString str = Sample; 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= St
3、rToBool( Test ); /int转ansistring 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
4、:Button1Click(TObject *Sender) 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是1
5、23.4600。:roll: /double转AnsiString使用类似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) AnsiStri
6、ng Test = 0x00FF8080; TColor 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; in
7、t First = 3; / 消除制定开头 int Length = 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 ); /得到AB
8、12345CDEF /取得ansi某一位字符 void _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函数! voi
9、d _fastcall TForm1:Button1Click(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
10、; int Result = Test.AnsiCompare( 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) AnsiSt
11、ring Test = ABCDEF; AnsiString 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 v
12、oid _fastcall TForm1:Button1Click(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
13、 *Sender) AnsiString ChkStr = 你好; 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 /全部变小写
14、vs全部变大写 void _fastcall TForm1: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
15、 *Sender) AnsiString Test = 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 = T
16、m.Length(); while ( Tm.SubString(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,
17、1) = | Tm.SubString(len-1,2) = ) / 半角除去 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 *S
18、ender) AnsiString Test = 拳脚; 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
19、free; AnsiString From = C+ 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 );