6
讀取特定行我有此內容的QPlainTextEdit:如何從QPlainTextEdit
This
is
a
QPlainTextEdit
我Qt文檔中尋找一個COMAND閱讀,例如第四行(QPlainTextEdit):比如readLine(int line),但是我找不到任何東西。
讀取特定行我有此內容的QPlainTextEdit:如何從QPlainTextEdit
This
is
a
QPlainTextEdit
我Qt文檔中尋找一個COMAND閱讀,例如第四行(QPlainTextEdit):比如readLine(int line),但是我找不到任何東西。
我會做到以下幾點:
QPlainTextEdit edit;
edit.setPlainText("This\nis\na\nQPlainTextEdit");
QTextDocument *doc = edit.document();
QTextBlock tb = doc->findBlockByLineNumber(1); // The second line.
QString s = tb.text(); // returns 'is'
您需要獲取純文本,並按行分割。例如:
QStringList lines = plainTextEdit->plainText()
.split('\n', QString::SkipEmptyParts);
if (lines.count() > 3)
qDebug() << "fourth line:" << lines.at(3);
如果您希望包括空行,然後取出SkipEmptyParts
說法 - 它會默認爲KeepEmptyParts
。
您還可以使用文本流:
QString text = plainTextEdit->plainText();
QTextStream str(&text, QIODevice::ReadOnly);
QString line;
for (int n = 0; !str.atEnd() && n < 3; ++n)
line = str.readLine();
qDebug() << "fourth or last line:" << line;
好,它的工作原理!如果我想獲得文本中的總行數? – user3204810
QTextDocument :: lineCount()會返回那個嗎?我猜是這樣。 – vahancho