Vraag : Binaire gegevens

Hallo,/>I behoefte
no maching functie
) '
" codeBody "
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 ()
{
    Het dossier van QFile („p19f.bdf“);
    als (! file.exists ()){
         ui - >textBrowser->append (het „dossier is niet bestaat“);
    }
    als (! file.open (QIODevice:: ReadOnly | QIODevice:: Tekst)){
        ui - >textBrowser->append (het „dossier is niet open“);
        terugkeer;
    }
    QDataStream binnen (&file);
    in.setVersion (QDataStream:: Qt_4_3);
    
    niet ondertekende int.max_lines = 102;
    niet ondertekend int. lines_read = 0;
    terwijl (! in.atEnd () && lines_read < max_lines)
    {
        De inhoud van QString = in.readRawData ();
        ui->textBrowser->append (inhoud);
        lines_read++; // de teller van de verhogingslijn
    }
    file.close ();
}

Antwoord : Binaire gegevens

Hallo obad62,

eerst zijn er geen „readRowData“ in de code u postte zodat veronderstel ik het een type is en „readRawData“ zou moeten zijn - hoe dan ook, QDataStream:: readRawData wordt verklaard als „int. QDataStream:: readRawData (klusje * s, int. len)“, zodat u moet een wijzer tot een „klusje“ overgaan - buffer en de grootte van de buffer. „readRawData zal“ dan de buffer met de geladen gegevens vullen en zal het aantal geladen bytes als „int.“ terugkeren.

BTW: U schreef u „behoefte om binaire gegevens“ te lezen, maar uw code schijnt om aan gelezen koordlijn door lijn van een tekstdossier worden geschreven. Als u IMO van het tekstdossier wilt lezen zou u „QTextStream“ en zijn functie „readLine“ in plaats van „QDataStream“ moeten gebruiken.

Hoop die hulp,

ZOPPO
Andere oplossingen  
 
programming4us programming4us