Datei binär einlesen

Beispieldatei ist schlecht, das einzige was ich habe, ist 80MB groß, werde mal ein paar Zeilen aus der Datei kopieren, ob der Inhalt noch Sinn macht weiß ich nicht, ist ja eigentlich auch egal, ich brauche im Prinzip aus dieser Datei eine Folge von 0en une 1en, also eine binäre Datenfolge, in diesem Strom muss ich dann irgendwelche abfolgen von Bits suchen z.B. synchronisationsbits, ist glaube 1000 0110 oder ähnlich, nur als Anmerkung was ich damit vor habe.

Habe mal einen Ausschnitt angehängt, allerdings als txt, sollte ja aber eigentlich egal sein, ihr könnt es ja auch in ts umbenennen
 

Anhänge

So hier mal eine Version in c und eine in c++. Hinsichtlich Fehler und Ausnahmen ist noch nichts beruecksichtigt. Eventuell musst du dir noch ueber unsingned/signed Daten machen. Die Ausgabe ist als Oktalzahlen, fuer binaere Ausgabe musst du dir noch was ueberlegen. Fuer Berechnungen ist diese Form aber schon ganz gut.

Code:
/* c++ Version */
#include <iostream>
#include <fstream>

using namespace std;

int main(int argc, char* argv[]) {

    unsigned int c;
    ifstream in(argv[1],ios::binary);

    while(in) {
	c=in.get();
	cout << oct << c << " ";
    }
    cout << endl;

    return 0;
}

Code:
/* c Version */
#include <stdio.h>

int main(int argc,char* argv[]) {
    FILE* fp;
    fp=fopen(argv[1],"r");
    int c;

    while((c=getc(fp))!=EOF)
	printf("%o ", c);

    return 0;
}
 
Ich habe den code ein wenig geändert:

Code:
ifstream in("c:\\zdf.ts",ios::binary);

allerdungs kann ich mir nicht erklären für was das argv[1] sein soll Ohne geht es im großen und ganzen
 
moin


Das ist ein Parameter dem du deinem Programm bei starten mitgeben kannst.
Z.B. könnte dein Programmaufruf so ausshen: "test.exe zdf.tv"


mfg
umbrasaxum
 
Welche Möglichkeiten gibt es die Daten in eine Variable zu bekommen Ich würde versuchen das ganze in einen Array zu bekommen, gibts da bessere Möglichkeiten unter c++
 
moin


Code:
char zeichen;
char array[100];

int i=0;

while((zeichen = datei.get()) != EOF)
{
    array[i++] = zeichen;
}


mfg
umbrasaxum
 
Zurück