QML - 如何在 ListView 上显示文本文件?

QML - How display a text file on ListView?

我想做一个telnet客户端。连接调制解调器和读取没有问题 QTcpSocket.

void iDirectClient::when_socket_ready_read() {
    QByteArray ba = m_socket->readAll();
    qDebug() << "\r\nRead:\r\n" << ba;

    QString filename = "my_file.txt";
        QFile file(filename);
        if (file.open(QIODevice::ReadWrite)) {
            QTextStream stream(&file);
            stream << ba << endl
        }
        file.close();
}

我使用 FileIO 读取 QML.Here 中的文本文件是我的代码:

QFile file(m_source);
QString fileContent;
if ( file.open(QIODevice::ReadOnly) ) {
    QString line;
    QTextStream t( &file );
    do {
        line = t.readLine();
        fileContent += line;
    }
    while (!line.isNull());
    qDebug() << "SOURCE" << line;
    file.close();
    file.remove();
}

我创建my_file.txt的时候没有问题。好像是

"677 = T12V_KU_SAT

623 = SBC2_KU_SEA

615 = IS19_KU_SWP"(这些是波束列表。)

但是我用 QML 读取了这个文本文件,代码如下:

FileIO {
    id: myFile
    source: "my_file.txt"
    onError: console.log(msg)
    Component.onCompleted: {
    }
}

Component.onCompleted: {
    console.log(myFile.read())
    textarea1.text = myFile.read();
}

"677 = T12V_KU_SAT623 = SBC2_KU_SEA615 = IS19_KU_SWP" 输出是这样的。

我想在列表视图中显示每个光束,因为我需要光束名称是 clickable.There换行有问题。

我希望我解释清楚我的 problem.Thank 你!

根据文档,QTextStream::readLine() 返回的字符串不包含行尾字符。