Lesen von Binär-Dateien in ein array von ints in c++

Habe ich eine Methode, die schreibt eine binäre Datei von einer int array. (es könnte falsch sein)

void bcdEncoder::writeBinaryFile(unsigned int packedBcdArray[], int size)
{
    fstream binaryIo;
    binaryIo.open("PridePrejudice.bin", ios::out| ios::binary | ios::trunc);
    binaryIo.seekp(0);
    binaryIo.write((char*)packedBcdArray, size * sizeof(packedBcdArray[0]));
    binaryIo.seekp(0);

    binaryIo.close();
}

Muss ich jetzt gelesen, dass die Binär-Datei zurück. Vorzugsweise haben Sie es, Lesen Sie es wieder in ein anderes array von unsigned ints ohne Verlust der Informationen.

Ich habe so etwas wie den folgenden code, aber ich habe keine Ahnung, wie das Lesen binäre Dateien, die wirklich funktioniert, und keine Ahnung, wie es zu Lesen in ein array von ints.

void bcdEncoder::readBinaryFile(string fileName)
{
    //myArray = my dnynamic int array

    fstream binaryIo;
    binaryIo.open(fileName, ios::in | ios::binary | ios::trunc);

    binaryIo.seekp(0);

    binaryIo.seekg(0);
    binaryIo.read((int*)myArray, size * sizeof(myFile));

    binaryIo.close();
}

Frage:

Wie Sie an die Implementierung der Funktion, der liest binäre Dateien?

schreiben Sie eventuell die Größe des Arrays zuerst. Würde es erheblich vereinfachen das Lesen von code.
Um eine Notiz hinzuzufügen, hier kann ich nicht verwenden Vektor. Ich habe eine eigene Klasse erstellt dynamische arrays für mich mit einer bestimmten Größe übergeben, und die Klasse richtig funktioniert. Ich kann auch die Größe zu bestimmen auf der Grundlage der Informationen, die ich senden, um diese arrays.

InformationsquelleAutor Justin Tennant | 2015-09-23

Schreibe einen Kommentar