QT5模板库,工具类

字符串类

标准c++提供了两种字符串,一种是c语言风格的以“\0”字符结尾的字符数组,另一种是字符串类String,而QT字符串类QString功能更强大。

QString::append()函数

具有与“+=”操作符同样的功能,实现一个字符串末尾追加另一个字符串,例如:

QString	str1 = "Welcome ";
QString str2 = "to ";

str1.append(str2);		//str1 = "Welcome to"
str1.append("you! ");	//str2 = "Welcome to you"


QString::sprintf()函数

此函数支持的格式定义符和C++库中的函数sprintf()定义一样。例如:

QString str;
str.sprintf("%s"," Welcome ");	//str="Welcome "
str.sprintf("%s"," to you! ");	//str="to you! "
str.sprintf("%s"," Welcome ","to you! "); 
//str="Welcome to you! "




QString::arg()函数

此函数的重载可以处理很多的数据类型。此外,一些重载具有额外的参数对字段的宽度、数字基数或者浮点数精度进行控制。通常,相对于函数QString::sqprintf(),函数QString::arg()是一个比较好的解决方案,因为它类型安全,完全支持Unicode,并且允许改变“%n”参数的顺序。例如:

QString str;
str = QString("%1 was born in %2.").arg("John").arg(1982);
//str="John was born in 1982."

其中
“%1"被替换为"John”.
“%2"被替换为"1982”.

QString也提供了一些其他组合字符串的方法,包括如下几种

insert()函数:在原子符串特定的位置插入另一个字符串;

prepend()函数:在原字符串的开头插入另一个字符串;

replace()函数:用指定的字符串代替原字符串中的某些字符;

去掉一个字符串两端的空白(空白字符包括回车字符"\n"、换行字符"\r"、制表符"\t"、空格字符" "等)

QString::trimmed()函数:移除字符串两端的空白字符;
QString::simplified()函数:移除字符串两端的空白字符,使用单个空格字符" "代替字符串中出现的空白字符

例如:

QString str = " Welcome \t to \n you!  "
str  = str.trimmed(); 	//str = "Welcome \t to \n you!"

上述代码中,如果使用的是str/str.simplified(),则str的结果是"Welcome to you!"。

猜你喜欢

转载自blog.csdn.net/qq_44013790/article/details/103505924