XE4 TStringDynArray 比 c6 的TStringList 好用 字符串 分解 分割 转换 TByteDynArray
TStringDynArray 动态数组 字符串 分解 分割 System::DynamicArray<System::UnicodeString>
TByteDynArray, (TIdBytes) String 相互转换 DynamicArray<System::Byte>
TIdBytes = array of Byte;
TByteDynArray;
Delphi type TByteDynArray = array of Byte;
TByteDynArray defines a dynamic array of byte elements. You must use SetLength to allocate storage for such an array.
typedef DynamicArray<Byte> TByteDynArray;
TBytes,就是 typedef System::DynamicArray<System::Byte> TBytes;
TBytes和TByteDynArray 是等价的。
数组
System::DynamicArray<int> array { 1, 2, 3, 4, 5};
DynamicArray<int> aint;
aint.Low;
aint.High;
aint[];
- arrayOfInt.Length = 10;
int total=;
for (int i=aint.Low; i<=aint.High; i++)
total += aint[i];
return total
SplitString 函数
TStringDynArray __fastcall SplitString(UnicodeString S, UnicodeString Delimiters);
和stringList的Delimiter一样,空格也分割了。 TByteArray
TStringDynArray ls;
ls = SplitString("a|b|c","|");
for(int i = ; i < ls .Length; i++)
ShowMessage(ls [i]); TStringDynArray sarr;
TStringList *ls = new TStringList();
ls->Text = "a|b|c";
sarr = ls->ToStringArray();
delete ls; //String <==> TByteDynArray
String str;
str="abc";
TByteDynArray barr;
barr = str.BytesOf(); bytes=System::Sysutils::BytesOf(Caption);
bytes=System::Sysutils::WideBytesOf(Caption); Caption = System::Sysutils::StringOf(barr);
Caption = System::Sysutils::WideStringOf(barr);
TBytes bytes;
TByteDynArray barr;
String str;
str = Memo1->Text;
barr = str.BytesOf();
bytes = BytesOf(str);
bytes = WideBytesOf(str);
bytes = barr;
ExtractStrings
int __fastcall ExtractStrings(const System::Sysutils::TSysCharSet &Separators, const System::Sysutils::TSysCharSet &WhiteSpace, System::WideChar * Content, TStrings* Strings);
TStringDynArray ar; ar[0]=2; ar[25]=""; ar.set_length(28); ar[0]=2; ar.Length;
用指定的字符串分割,空格可以不分割!
ExtractStrings([';',',',':'],['#',' '],PChar(s),List);
//第一个参数是分隔符; 第二个参数是开头被忽略的字符
- TStringDynArray arr;
- arr = System::Ioutils::TDirectory::GetFiles("C:\\Windows");
- this->Memo1->Lines->AddStrings(arr);
TStringDynArray arr;
arr = System::Ioutils::TDirectory::GetFiles("C:\\Windows");
this->Memo1->Lines->AddStrings(arr);
- arr = System::Ioutils::TDirectory::GetFiles("c:\\windows","*.ppt", System::Ioutils::TSearchOption::soAllDirectories );
for I := 0 to Length(LList) - 1 do
mmResults.Lines.Add(LList[I]);
Delphi 推荐用这个方法
astr:string;
list: TArray<string>;
list := astr.Split(['|']);
list[0],list[1]...
for i := 0 to High(Editors) do
list[i]
for s in list
showmessage(s);
Split 是 delphi的函数,c++没有。TStringHelper = record helper for string
TStringList好用的特性
ss:TStringList;
begin
ss.AddPair('p1','aaaaa');
ss.AddPair('p2','bbbbb');
ss.Values['p1'];
ss.Values['p2'];
这样的效果
p1=aaaaa
p2=bbbbb
取p1的值aaaa
ss.Values['p1'];
st.Split([','],TStringSplitOptions.ExcludeEmpty);
CommaText甚是方便
TStrings.CommaText
aa
bb
cc
返回值 aa,bb,cc TStringList分割字符
新属性StrictDelimiter精确分割,空格不在分割换行了。 slsub->StrictDelimiter=true;
slsub->Delimiter = awchar;
slsub->DelimitedText = str; 拼接
list:TStringList;
Result := string.Join('|',List.ToStringArray) ;
XE4 TStringDynArray 比 c6 的TStringList 好用 字符串 分解 分割 转换 TByteDynArray的更多相关文章
- Delphi容器类之---TList、TStringList、TObjectList,以及一个例程的代码分析
转载自:http://blog.csdn.net/jqandjq/article/details/5429137 看了这里标题,大家可能以为我会谈TListBox控件,那就错了.我要谈的是Delphi ...
- Python3 中bytes数据类型深入理解(ASCII码对照表)
bytes的来源 bytes 是 Python 3.x 新增的类型,在 Python 2.x 中是不存在的. bytes 的意思是"字节",以字节为单位存储数据.而一个字节二进制为 ...
- Python-基础数据类型
数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定 ...
- python字符串及其方法详解
首先来一段字符串的基本操作 str1="my little pony" str2="friendship is magic" str3=str1+", ...
- Python3.x中bytes类型和str类型深入分析
Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示.Python 3不会以任意隐式的方式混用str和b ...
- Delphi For Android 开发笔记 2 NEXTGEN下的字符串类型
delphi开发速度迅捷至少有30%(猜的,呵呵)的原因是因为其字符串(string.WideString.PChar.PAnsiChar等)处理能力. 而从delphi XE4开始,在system等 ...
- delphi常用函数过程
数据类型转化 1.1. 数值和字符串转化 Procedure Str(X [: Width [ : Decimals ]]; var S); 将数值X按照一定格式转化成字符串S.Wid ...
- python中unicode、utf8、gbk等编码问题
转自:http://luchanghong.com/python/2012/07/06/python-encoding-with-unicode-and-gbk-and-utf8.html 概要:编码 ...
- strings
3.1.1.1 计算列表中的字符串数目 使用Count属性可计算列表中的字符串数目.Count是只读属性,用以指示列表中字符串列表数目.因为字符串列表是以零开始索引,因而Count比列表的最大索引数大 ...
随机推荐
- 【mysql】修改数据时候,抛出safe mode相关错误,处理方法
在mysql5中,可以设置safe mode,比如在一个更新语句中 UPDATE table_name SET bDeleted=0; 执行时会错误,报: You are using safe upd ...
- 【转】python mysql数据库 'latin-1' codec can't encode character错误问题解决
UnicodeEncodeError: 'latin-1' codec can't encode character "UnicodeEncodeError:'latin-1' code ...
- System.out.println()详解 和 HttpServletRequest 和 XMLHttpRequest
System是一个类,位于java.lang这个包里面.out是这个System类的一个PrintStream类型静态属性.println()是这个静态属性out所属类PrintStream的方法. ...
- 一个简单的批量更新oracle 数据库中 最近的服务商名称的数据
有一个需求是这样的,我们需要更新数据库中的数据,数据时这样的 1.大约50万以上 2. 数据中有较多的重复数据 3. 需要将表中最近的代理商的名称赋值给行中的服务商名称 4. 代理商的名称可能有多个, ...
- ereg()替换为preg_match(),ereg_repalce替换为preg_replace得加斜杠
PHP 5.3 ereg() 无法正常使用,提示“Function ereg() is deprecated Error”是因为它长ereg 函数进行了升级处理,需要像preg_match使用/ /来 ...
- putty SSH tunnel function
github & dynamic
- 【转】每天一个linux命令(58):telnet命令
原文网址:http://www.cnblogs.com/peida/archive/2013/03/13/2956992.html telnet命令通常用来远程登录.telnet程序是基于TELNET ...
- HIVE之 Sqoop 1.4.6 安装、hive与oracle表互导
1. sqoop数据迁移 1.1 概述 sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具. 导入数据:MySQL,Oracle导入数据到Hadoop的HDFS.HI ...
- Microsoft Dynamics CRM 如何修改域密码
一.安装IIS6脚本工具,如下图所示: 二.复制iisadmpwd文件夹到AD Server的C:\Windows\SysWOW64\inetsrv文件夹下 三.注册Iisadmpwd目录下的IISp ...
- 【转】C# 根据当前时间获取,本周,本月,本季度等时间段 .Net中Exception
1 DateTime dt = DateTime.Now; //当前时间 2 3 DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayO ...