QString截取字符串
mid()
在QString中,可以通过以下方法截取字符串:
使用mid()
方法:
QString Str_Vendor = str1.mid(0, 2);
QString Str_User = str1.mid(2, 2);
QString Str_Type = str1.mid(4, 2);
QString Str_QDate = str1.mid(6, 2);
QString Str_ProductCount = str1.mid(8, 2);
QString Str_ID = str1.mid(10, 4);
使用left()
和right()
方法:
QString strA = "Hello, World!";
QString newStr1A = strA.left(5);
qDebug() <<"newStr1A:" << newStr1A <<endl;
这将从字符串的左侧开始,截取5个字符,并将新的字符串赋值给newStr1
。此时newStr1
的内容将是"Hello"
。
或者使用right()
方法:
QString newStr2A = strA.right(6);
qDebug() <<"newStr2A:" << newStr2A <<endl;
newStr2A: "World!"
这将从字符串的右侧开始,截取6个字符,并将新的字符串赋值给newStr2
。此时newStr2
的内容将是"World!"。
使用indexOf()
方法:
如果我们需要截取的是以某个字符为结尾的子串,可以使用indexOf()
方法找到该字符的位置,然后使用leftRef()
方法取从字符串开头到该字符之前的部分。例如:
QString strB = "Hello/World!";
int index = strB.indexOf('/');
QStringRef sub_str = strB.leftRef(index);
qDebug() <<"sub_str:" << sub_str <<endl;
sub_str: "Hello"
以上方法均可用来截取字符串的一部分,具体选择哪种方法取决于你需要截取的字符范围以及是否需要保留原字符串中的其他内容。