关于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的更多相关文章

  1. Python 常用string函数

    Python 常用string函数 字符串中字符大小写的变换 1. str.lower()   //小写>>> 'SkatE'.lower()'skate' 2. str.upper ...

  2. string类(二、常用string函数)

    常用string相关,参至System.String类: 1/ string.Length a.Length字符串长度 string a="a5"; //a.Length==2 s ...

  3. Android开发——Notification通知的使用及NotificationCopat.Builder常用设置API

    想要看全部设置的请看这一篇 [转]NotificationCopat.Builder全部设置 常用设置: 设置属性 说明 setAutoCancel(boolean autocancel) 设置点击信 ...

  4. java常用string inputStream转换

    1.String –> InputStream InputStrem is = new ByteArrayInputStream(str.getBytes()); 或者 ByteArrayInp ...

  5. Flash Builder常用快捷键

    红色为常用 Ctrl-Shift-O - Organize imports,去除无用的导入类 Ctrl+F11 - 运行(在浏览器浏览) F11 - 调试 Alt+/ - 内容辅助 Ctrl+Alt+ ...

  6. 常用string格式化

    1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...

  7. 常用string函数分析

    string函数分析string函数包含在string.c文件中,经常被C文件使用.1. strcpy函数原型: char* strcpy(char* str1,char* str2);函数功能: 把 ...

  8. C++常用string函数

    来自https://www.cnblogs.com/jm-Xu/p/9318705.html string(s小写)是C++标准库中的类,纯C中没有,使用时需要包含头文件#include<str ...

  9. php常用string函数

    http://www.w3school.com.cn/php/php_ref_string.asp1.addcslashes() 返回在指定的字符前添加反斜杠的字符串2.addslashes() 返回 ...

随机推荐

  1. Codeforces 166B - Polygon (判断凸包位置关系)

    Codeforces Round #113 (Div. 2) 题目链接:Polygons You've got another geometrical task. You are given two ...

  2. R:ggplot2数据可视化——进阶(3)

    Part 3: Top 50 ggplot2 Visualizations - The Master List, 结合进阶1.2内容构建图形 有效的图形是: 不扭曲事实 传递正确的信息 简洁优雅 美观 ...

  3. CentOS7中下载MySQL

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~CentOS 7中,yum默认安装的是Mariadb,但我想使用MyS ...

  4. 转——调试寄存器 原理与使用:DR0-DR7

    下面介绍的知识性信息来自intel IA-32手册(可以在intel的开发手册或者官方网站查到),提示和补充来自学习调试器实现时的总结. 希望能给你带去有用的信息. (DRx对应任意的一个调试寄存器. ...

  5. Python 执行tail文件并操作

    def log_search(self, logfile, search_content, timeout=10): import time import subprocess import sele ...

  6. iOS组件化开发-CocoaPods简介

    CocoaPods简介 任何一门开发语言到达一定阶段就会出现第三方的类库管理工具,比如Java的Maven.WEB的Webpack等.在iOS中类库的管理工具-CocoaPods. 利用CocoaPo ...

  7. jupyter中使用graphviz

    参考: https://www.cnblogs.com/zhanjiahui/p/11335038.html https://blog.csdn.net/linxid/article/details/ ...

  8. Yii2 中使用ts

    在运行环境 vagrant Ubuntu box 中安装 sass ,typescript等 安装需要的软件: sudo su -c "gem install sass" # 可选 ...

  9. 从服务器上下载下来的代码,部署到本地时,Url自动带www前缀

    fix步骤: 1.网站根目录下,找到.htacess文件,有记事本打开 2.定位到 RewriteCond %{HTTP_HOST} . RewriteCond %{HTTP_HOST} !^www\ ...

  10. CSIC_716_20191116【常用模块的用法 time ,datetime, random, os, sys, hashlib】

    import time import datetime import os import sys import random import hashlib time模块 时间戳(Timestamp) ...