我有这样的事情:

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 文本由多行文本组成,我需要将其转换为在线文本/QString。我怎样才能实现这个目标?问候

有帮助吗?

解决方案

将文本放入一个生成的icotagcode,然后使用QStringList,例如,。

QStringList doc;
[...]
Text = Stream.readLine();
Text = Text.simplified();
doc << Text;
[...]
QString final = doc.join(" ");
.

其他提示

你可以使用 readAll 的函数 QTextStream 为了获得包含所有文本的字符串,然后使用 replace 的函数 QString 为了删除新行:

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

如果你有一个大文件,最好使用 readLine 功能。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top