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方法之 ...
随机推荐
- css之水平垂直居中方式
布局中常用到的水平垂直居中问题 作为一个前端开发人员,布局是我们日常工作中解除最多的,而水平垂直居中也必不可少的出现,面试中也经常遇到噢- 一.position:absolute(固定宽高) widt ...
- 快速切题 sgu134.Centroid 树形dp
134. Centroid time limit per test: 0.25 sec. memory limit per test: 4096 KB You are given an undirec ...
- SGU 139. Help Needed! 逆序数,奇偶性,分析 难度:0
139. Help Needed! time limit per test: 0.25 sec. memory limit per test: 4096 KB Little Johnny likes ...
- Struts2基本使用(三)--数据交互
Struts2中的数据交互 在Struts2中我们不必再使用request.getParameter()这种方式来获取前台发送到服务器的参数. 我们可以在服务器端的Java类中直接声明一个和前台发送数 ...
- Xadmin的配置及使用
xadmin是Django的第三方扩展,可是使Django的admin站点使用更方便. 1. 安装 通过如下命令安装xadmin的最新版 pip install https://github.com/ ...
- BZOJ4372: 烁烁的游戏【动态点分治】
Description 背景:烁烁很喜欢爬树,这吓坏了树上的皮皮鼠. 题意: 给定一颗n个节点的树,边权均为1,初始树上没有皮皮鼠. 烁烁他每次会跳到一个节点u,把周围与他距离不超过d的节点各吸引出w ...
- 【java基础】java字符串之StringBuffer和StringBuilder
[一]简述区别 package com.sxf.test.string; public class StringBufferStringBuilderTest { public static void ...
- Python :random 随机数生成
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random() 用于生成一个0到1的随机符点数: 0 &l ...
- Linux function: unshare
When a new process is created with the clone() system call, a set of flags is provided which tells t ...
- PHP如何清除COOKIE?PHP无法删除COOKIE?设置COOKIE有效期、COOKIE过期
cookie和session的区别? http://www.cnblogs.com/phphuaibei/archive/2011/11/15/2250082.html PHP如何清除COOKIE?P ...