Autor Beitrag
Dingo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 64
Erhaltene Danke: 1



BeitragVerfasst: Di 18.07.17 15:46 
Grüße!

Muss ich mal was fragen wegen BinaryReader und BinaryWriter, mir platzt bald der Kopf, ich bekomms nciht hin.

Habe folgendes Problem:

Ich habe zwei Integer Werte. Diese Werte will ich per BinaryWriter in eine Zeile schreiben.
Danach kommen neue Werte, diese will ich in die nächste Zeile schreiben und so weiter.

Im Endeffekt sieht das so aus

1 2
3 4
5 6

Dieses soll ich mit Binary Writer schreiben und später wieder lesen.

Ich weiß einfach nicht wie ichs schreiben soll. Diese Methode wird immer wieder aufgerufen:

ausblenden C#-Quelltext
1:
writer.Writer(zahl.x + zahl.y);					


und:

ausblenden C#-Quelltext
1:
2:
3:
for (int i = 0; i < 10; i++) {
     Console.WriteLine("{0} ", zahl.ReadInt32());
}


Was ich heraus bekomme ich keine Übersicht wie oben, sondern Zahlenklantsch.

Ich hab nun schon versucht beim Reader mit einem Array zu arbeiten, doch keine Ahnung wie ich ihn da einbinde.

Habt ihr eine helfende Idee für mich?
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Di 18.07.17 16:53 
Eine Binärdatei kennt keine Zeilenumbrüche.

Einfach 2 Werte schreiben:
ausblenden C#-Quelltext
1:
2:
writer.Writer(zahl.x);
writer.Writer(zahl.y);
(dein Originalcode hat die Summe beider Werte als Binärzahl abgespeichert).

Und lesen dann analog
ausblenden C#-Quelltext
1:
2:
int x = reader.ReadInt32();
int y = reader.ReadInt32();

Und bei einer Liste (oder Array) diesen Code in einer Schleife mehrmals ausführen.