C++Builder 常用String
关于AnsiSting的使用大全(1)
arrow:
Ansistring 转 char
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "哈哈";
char *chr = Test.c_str();
}
char转Ansistring
代码:
#include <windef.h>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString str = "Sample";
char chr[MAX_PATH];
strcpy( chr , str.c_str() );
}
ansistring转int
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "123";
int i = StrToInt( Test );
}
int转ansistring
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int i = 123;
AnsiString str = IntToStr( i );
}
ansisting转double
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "123";
long double d = StrToFloat( Test );
}
double转ansistring
代码:
void __fastcall TForm1::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是123.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:
ansi转Tclor型(从现在开始AnsiSting简称ansi
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "0x00FF8080";
TColor Col = StringToColor( Test );
}
Tclor转ansi
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TColor Col = 0x00FF8080;
AnsiString str = ColorToString( Col );
}
ansi的一部分消除,哈哈,类似vb里的mid函数,不过是反的~
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
int First = 3; // 消除制定开头
int Length = 2; // 消除制定长度
AnsiString Dstr = Test.Delete( First , Length );
}//得到ABEF
ansi的一部分插入
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
AnsiString Ins = "12345"; // 插入串
int Pos = 3; // 在哪插
AnsiString Istr = Test.Insert( Ins , Pos );
//得到AB12345CDEF
}
取得ansi某一位字符
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
AnsiString Npos = Test[3];//得到C
}
取得ansi里最后一个字符
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
char *Lstr = Test.AnsiLastChar();//得到F
}
取出ansi字符,这才是vb的mid函数!
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
int First = 3; // 3开始取
int Length = 2; // 取2位
AnsiString Getstr = Test.SubString( First , Length );
//得到CD
}
ansi的字母 是否相同比较
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
AnsiString Sample = "abcdef";
int Result = Test.AnsiCompare( Sample );
返回1,不同!分大小写。
}
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
AnsiString Sample = "abcdef";
int Result = Test.AnsiCompareIC( Sample );
//返回0,相同!没有分大小写,哈哈
}
在ansi中寻找字符
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
AnsiString Sample = "E";
int Result = Test.Pos( Sample );
//返回5,如果你写Sample="haha",就返回0,找不到,哈哈
}
在ansi中找字符串,和上一个类似
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "ABCDEF";
AnsiString Sample = "EF";
int Result = Test.Pos( Sample );
//返回5,即E字符的位置
}
判断字符串长度,类似vb的len
代码:
void __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 *Sender)
{
AnsiString ChkStr = "你好";
int ChkPos = 1 ;
if ( ByteType( ChkStr , ChkPos ) == mbSingleByte ){
Edit1->Text="0";
}
else{
Edit1->Text="1";
}//返回1,如果你写ChkStr="fxxk",就返回0
}
检测空字符串
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Test = "";
bool chk = Test.IsEmpty();
if (chk )
Edit1->Text="1";//返回1
}
全部便小写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 *Sender)
{
AnsiString Test = " ABCDEF ";
AnsiString TLstr = Test.TrimLeft();
AnsiString TRstr = Test.TrimRight();
AnsiString Tstr = Test.Trim();
}
但是,这个处理不了全角的空格 怎么办ni~
代码:
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.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,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 *Sender)
{
AnsiString Test = " 拳脚 ";
AnsiString Ret = TrimStr(Test,"B")
}
相同字符重复输入
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Soc = AnsiString::StringOfChar( '*' , 100 );
Edit1->Text=Soc ;//显示100个*
}
关于AnsiSting的使用大全(2)
字符串替换
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Str = "Borland C++ Builder is free";
AnsiString From = "C++ Builder";
AnsiString To = "Delphi";
AnsiString Result;
Result = StringReplace( Str, From, To, TReplaceFlags() <<
rfReplaceAll << rfIgnoreCase );
//<<后是参数,得到Borland Delphi is free
}
全角变半角
代码:
AnsiString Zen = "1234567890";
int Len = Zen.Length();
char buf[MAX_PATH];
ZeroMemory( buf, sizeof( buf ) );
LCMapString( GetUserDefaultLCID(), LCMAP_HALFWIDTH, Zen.c_str(), Len, buf, sizeof( buf ) );
AnsiString Han = AnsiString( buf );
Edit1->Text=Han;
半角变全角
代码:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Han = "1234567890";
int Len = Han.Length();
char buf[MAX_PATH];
ZeroMemory( buf, sizeof( buf ) );
LCMapString( GetUserDefaultLCID(), LCMAP_FULLWIDTH, Han.c_str(), Len, buf, sizeof( buf ) );
AnsiString Zen = AnsiString( buf );
}
设置日期格式为YYYY-MM-DD
DateSeparator = '-';
ShortDateFormat = "yyyy-mm-dd";
让控件随窗口尺寸更改而更改(by jishiping)
用 ScaleBy(int M, int D); 函数就可以了。例如窗口放大到125%: ScaleBy(125, 100);
C++Builder 常用String的更多相关文章
- Python 常用string函数
Python 常用string函数 字符串中字符大小写的变换 1. str.lower() //小写>>> 'SkatE'.lower()'skate' 2. str.upper ...
- string类(二、常用string函数)
常用string相关,参至System.String类: 1/ string.Length a.Length字符串长度 string a="a5"; //a.Length==2 s ...
- Android开发——Notification通知的使用及NotificationCopat.Builder常用设置API
想要看全部设置的请看这一篇 [转]NotificationCopat.Builder全部设置 常用设置: 设置属性 说明 setAutoCancel(boolean autocancel) 设置点击信 ...
- java常用string inputStream转换
1.String –> InputStream InputStrem is = new ByteArrayInputStream(str.getBytes()); 或者 ByteArrayInp ...
- Flash Builder常用快捷键
红色为常用 Ctrl-Shift-O - Organize imports,去除无用的导入类 Ctrl+F11 - 运行(在浏览器浏览) F11 - 调试 Alt+/ - 内容辅助 Ctrl+Alt+ ...
- 常用string格式化
1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...
- 常用string函数分析
string函数分析string函数包含在string.c文件中,经常被C文件使用.1. strcpy函数原型: char* strcpy(char* str1,char* str2);函数功能: 把 ...
- C++常用string函数
来自https://www.cnblogs.com/jm-Xu/p/9318705.html string(s小写)是C++标准库中的类,纯C中没有,使用时需要包含头文件#include<str ...
- php常用string函数
http://www.w3school.com.cn/php/php_ref_string.asp1.addcslashes() 返回在指定的字符前添加反斜杠的字符串2.addslashes() 返回 ...
随机推荐
- 关于Mysql分区和分表
[分区概念]分区就是把一张表的数据按照一定的规则分成多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上.分区后表还是一张表.分区根据一定的规则把数据文件和索引文件进行了分割,还多出了一个.pa ...
- JAVA IntelliJ IDEA for mac/jdk的安装及环境配置、运行
现在配置完之后再回头看看,其实挺简单, 但我还是弄了好几个小时才配置出来, 不过好在是自己配置出来的, 每天都在慢慢进步. 安装及配置步骤如下: JAVA的IDE的话去jetbrains的官网上对应下 ...
- 图像直方图均衡化(C#)
关于图像直方图均衡化的原理和步骤先不作讨论,我就看看代码吧. private Bitmap picequalization(Bitmap basemap, int width, int height) ...
- mysql查询小技巧
如果所传bookTypeName为空则执行select * from t_bookType(搜索框里未输入信息) 否则追加 and bookTypeName like '%"+bookTy ...
- MySQL数据库的基本语法
1.MySQL数据类型数值以及浮点型介绍 2.MySQL数据类型之字符串介绍 常用的有:char.varchar.text. 3.MySQL数据类型之时间类型介绍 常用的是:timestampt,将时 ...
- windows下 Mysql 8.0.x 数据库简单的导出和导入!!!
1.首先需要进入到mysql安装目录下的bin目录,执行cmd进入命令窗口. 2.导出(导出某个数据库,也可以针对某张表导出)2.1导出数据结构以及数据的命令: mysqldump -u root - ...
- luoguP2580 于是他错误的点名开始了 [Trie]
题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次,然后正好被路过的校长发现了然后就是一顿欧拉欧拉欧拉(详情请见已结束比赛CON900). ...
- (组合数学)不定方程的解+猜测——cf997B
首先要求出三种等价情况 5×1+1×50=1×5+5×105×1+1×50=1×5+5×10 9×5=5×1+4×10 8×5+1×50=9×10 那么可以求出三种关于x5,x10的不可行条件 x ...
- 請問各位大大,我要將listview顯示的縮圖加入到listview2,請問該如何做呢
請問各位大大,我要將listview顯示的縮圖加入到listview2,請問該如何做呢?下面的function可以將listview的縮圖加到listview2但是全都顯示listview1第一張的圖 ...
- Spring Boot Redis Cluster实战
添加配置信息 spring.redis: database: 0 # Redis数据库索引(默认为0) #host: 192.168.1.8 #port: 6379 password: 123456 ...