C++Builder 也有StringBuilder
System::Sysutils::TStringBuilder *sb = new TStringBuilder;
sb->Append("ww");
sb->AppendLine();
sb->Append("hello");
Caption = sb->ToString();
delete sb;
c++builder字符串处理类
sb->Append("ww"); 这里重载了很多类型,int、bool、byte等,无需自己转换了。
StringWriter.write();//同样重载了很多方法。
TStringBuilder、TStringReader、TStringWriter
http://docwiki.embarcadero.com/Libraries/Berlin/en/System.SysUtils.TStringBuilder
http://docwiki.embarcadero.com/CodeExamples/Berlin/en/StringReaderWriter_(C%2B%2B)
http://docwiki.embarcadero.com/CodeExamples/Berlin/en/TStringBuilder_(C%2B%2B)
网友整理的很实用
http://www.cnblogs.com/sures/p/6044917.html
很实用的方法
TStringBuilder* Replace(UnicodeString OldValue, UnicodeString NewValue, int StartIndex, int Count)/* overload */;
std::auto_ptr<TStringBuilder> sb(new TStringBuilder());
void __fastcall TMainForm::btReadClick(TObject *Sender)
{
Char Ch;
TStringReader* Reader1;
TStringReader* Reader2;
TCharArray Buffer;
String Line;
String Init; Init = String("This is the first line") + char() + "This is the some text"; /* Create a string reader. */
Reader1 = new TStringReader(Init);
Reader2 = new TStringReader(Init); /* Read the first string. */
Edit1->Text = Reader1->ReadLine();
Memo1->Text = Reader1->ReadToEnd(); /* Prepare a buffer. */
Buffer.set_length(); /* Read first 23 characters from the second string. */
if (Reader2->ReadBlock(Buffer,,Buffer.Length) < Buffer.Length)
{
MessageDlg("Reading failed! Expected to read 23 characters!",
mtError, TMsgDlgButtons() << mbOK, );
} /* Read the rest of the second string, char-by-char, and write it in the
second memo box. */
Line = "";
do
{
Ch = Char(Reader2->Read());
Line += Ch;
}
while (Reader2->Peek() >= );
Memo2->Text = Line; /* Close the reader. */
Reader1->Close();
Reader2->Close();
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::btWriteClick(TObject *Sender)
{
TStringWriter* Writer;
String MyStr; /* Create a string writer. */
Writer = new TStringWriter(); /* Store the text in the writer. */
Writer->WriteLine(Edit1->Text);
Writer->Write(Memo1->Text + sLineBreak + Memo2->Text);
MyStr = Writer->ToString();
ShowMessage(MyStr); /* Clear writer's buffer data. */
Writer->Flush(); /* Close the writer. */
Writer->Close();
delete Writer;
}
C++Builder 也有StringBuilder的更多相关文章
- 设计模式Builder(建造者)模式
1.出现原因 在软件系统中,有时候会面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成:由于需求的变化,这个复杂的对象的各个部分可能面临着剧烈的变化,但是把他们组合在一起的算法 ...
- [java初探外篇]__关于StringBuilder类与String类的区别
前言 我们前面学习到String类的相关知识,知道了它是一个字符串类,并且了解到其中的一些方法,但是当时并没有太过注意到String类的特点,今天就StringBuilder类的学习来比较一下两者的区 ...
- Java笔记——String、StringBuffer和StringBuilder类
String类是不可变类,即一旦一个String对象被创建以后,包含在这个对象中的字符串序列是不可改变的,直至这个对象被销毁. StringBuffer对象则代表一个字符序列可变的字符串,当一个S ...
- JDK源码分析系列---String,StringBuilder,StringBuffer
JDK源码分析系列---String,StringBuilder,StringBuffer 1.String public final class String implements java.io. ...
- 面试常备,字符串三剑客 String、StringBuffer、StringBuilder
尽人事,听天命.博主东南大学硕士在读,热爱健身和篮球,乐于分享技术相关的所见所得,关注公众号 @ 飞天小牛肉,第一时间获取文章更新,成长的路上我们一起进步 本文已收录于 「CS-Wiki」Gitee ...
- Core Java Volume I — 3.6. Strings
3.6. StringsConceptually, Java strings are sequences of Unicode characters(Java的字符串是一个Unicode序列). Fo ...
- (经常看看)jdk 设计模式
在JDK(Java Development Kit)类库中,开发人员使用了大量设计模式,正因为如此,我们可以在不修改JDK源码的前提下开发出自己的应用软件,本文列出了部分JDK中的模式应用实例,有兴趣 ...
- String源码
/* * Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETA ...
- C# lesson3
一.局部变量和成员变量 1.程序入口(Main)要调用非静态成员(变量或方法)的话,是需要通过对象去调用的: 2.普通方法里面去调用变量或方法的话可以直接调用 成员变量(全局变量):放在Main方法之 ...
随机推荐
- const关键字对C++成员函数的修饰
const对C++成员函数的修饰分为三种:1. 修饰参数:2. 修饰返回值:3. 修饰this指针.简述一下知识点如下,以后找功夫再完善. 1. 对函数参数的修饰. 1)const只能用来修饰输入参数 ...
- UVA-11383 Golden Tiger Claw (KM算法)
题目大意:一张可行二分图的权值以邻接矩阵的形式给了出来,现在要找每一个节点的可行顶标,使顶标和最小. 题目分析:直接用KM算法,结束后顶标之和最小...模板题. 代码如下: # include< ...
- wikioi1036 商务旅行 挺水的lca
链接:http://wikioi.com/problem/1036/ 题意不写了. 思路:很明显找到lca然后用两个点的深度相加-lca的深度就是这一步的最近步数. #include <stdi ...
- facebook开源的prophet时间序列预测工具---识别多种周期性、趋势性(线性,logistic)、节假日效应,以及部分异常值
简单使用 代码如下 这是官网的quickstart的内容,csv文件也可以下到,这个入门以后后面调试加入其它参数就很简单了. import pandas as pd import numpy as n ...
- vue.js-读取/发送数据
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 转:XML 中的空白字符须知:xml:space
了解 XML 空白字符的概念并掌握如何避免与之相关的问题的技巧. 2006 年 4 月发布 很多时候,您可能都没注意到,在 XML 中所做的更改影响着您访问 XML 文档中数据的方式.例如: < ...
- ES6必知必会 (六)—— Class
1.在之前的JS面向对象编程中,如果定义一个构造函数,一般来说是这样: function Person( name , age ) { this.name = name; this.age = age ...
- iperf/iperf3网络测试工具的安装与使用
1.官网及下载路径: iperf3 homepage at: http://software.es.net/iperf/Report bugs to: https://github.com/esnet ...
- CCNode的属性说明
class CC_DLL CCNode : public CCObject { protected://属性列表 float m_fRotationX; ///x轴旋转角度 float m_fRota ...
- {转载}需要同时设置 noatime 和 nodiratime 吗?
相信对性能.优化这些关键字有兴趣的朋友都知道在 Linux 下面挂载文件系统的时候设置 noatime 可以显著提高文件系统的性能.默认情况下,Linux ext2/ext3 文件系统在文件被访问.创 ...