从QByteArray开始,我想在我的QByteArray中搜索"\n"char并将所有字符从头开始加到"\n"并将它们保存在QString中; 之后,我将传递给下一个字节直到下一个"\n"并将它们保存到一个新的QString中
QByteArray MyArray= (all data from my previous process);
quint16 ByteArrayCount = MyArray.count(); // number of bytes composing MyArray
quint16 mycounter;
QString myString;
while (mycounter < ByteArrayCount)
{
if(MyArray[mycounter] != "\n")
myString.append(MyArray[mycounter]);
mycounter++;
}
Run Code Online (Sandbox Code Playgroud)
这将附加新行之前的所有字节; 我的问题是如何评估MyArray [counter],因为我无法在计数器增加时检查每个字节.
解?
你可以省去麻烦,简单地说:
QString s(myArray);
QStringList resultStrings = s.split('\n');
Run Code Online (Sandbox Code Playgroud)
这将为您提供一个为每个新行字符分割的字符串列表,这就是您想要做的事情.
此外,不要强调这一点,但你没有初始化你的计数器,你真的应该 ;)
| 归档时间: |
|
| 查看次数: |
2601 次 |
| 最近记录: |