1

私はこのようなものを持っています:

void ReadFileAndConvert ()
{
    QFile File (Directory + "/here/we/go");

    if(File.open(QIODevice::ReadOnly | QIODevice::Text))
    {
        QTextStream Stream (&File);
        QString Text;

        do
        {
            Text = Stream.readLine();
            Text = Text.simplified();
            // Here I want to convert the multiline QString Text into a oneline QString

// ...
}

QString Text は、オンラインの Text/QString に変換する必要がある複数行の Text で構成されています。どうすればこれを達成できますか?挨拶

4

2 に答える 2

7

テキストを に入れQStringList、 を使用しますQStringList::join()

QStringList doc;
[...]
Text = Stream.readLine();
Text = Text.simplified();
doc << Text;
[...]
QString final = doc.join(" ");
于 2012-03-12T12:17:24.063 に答える
2

readAllの関数を使用してQTextStreamすべてのテキストを含む文字列を取得してから、のreplace関数を使用QStringして新しい行を削除できます。

QString oneLineText = Stream.readAll().replace("\n"," ").simplified();

大きなファイルがある場合は、このreadLine関数を使用することをお勧めします。

于 2012-03-12T12:58:50.650 に答える