Frage : Binäre Daten

Hallo,
I Notwendigkeit, binäre Daten zu lesen, was Problem in meinem Code ist. Ich finde diese Störung:
no maching Funktion für Anruf zu 'QDataStream:: readRowData () '
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
void Widget:: on_pushButton_4_clicked ()
{
    QFile Akte („p19f.bdf“);
    wenn (! file.exists ()){
         ui - >textBrowser->append („Akte ist nicht existiert“);
    }
    wenn (! file.open (QIODevice:: Schreibgeschützt | QIODevice:: Text)){
        ui - >textBrowser->append („Akte ist nicht“ geöffnet);
        Rückkehr;
    }
    QDataStream innen (&file);
    in.setVersion (QDataStream:: Qt_4_3);
    
    nicht unterzeichnete int max_lines = 102;
    nicht unterzeichnetes int lines_read = 0;
    während (! in.atEnd () && lines_read < max_lines)
    {
        QString Inhalt = in.readRawData ();
        ui->textBrowser->append (Inhalt);
        lines_read++; //-Zunahmelinie Kostenzähler
    }
    file.close ();
}

Antwort : Binäre Daten

Hallo obad62,

zuerst gibt es kein „readRowData“ im Code, den Sie bekannt gaben, also schätze ich, dass es eine Art ist und „readRawData“ sein sollte - irgendwie, QDataStream:: readRawData wird als „int QDataStream: erklärt: readRawData (Putzfrau * s, int len),“, also Sie müssen einen Zeiger zu einer „Putzfrau“ führen - abdämpfen und die Größe des Puffers. „readRawData“ dann füllt den Puffer mit den geladenen Daten und bringt die Zahl geladenen Bytes als „int“ zurück.

BTW: Sie schrieben Ihnen „Notwendigkeit, binäre Daten zu lesen“, aber Ihr Code scheint geschrieben zu werden, um die Schnur zu lesen, die von einer Textdatei Reihe für Reihe ist. Wenn Sie ein Textdatei IMO lesen möchten, sollten Sie „QTextStream“ und seine Funktion „readLine“ anstelle von „QDataStream“ verwenden.

Hoffen, dass Hilfen,

ZOPPO
Weitere Lösungen  
 
programming4us programming4us