Wie zu Lesen float-Werte aus den binären Datei mit c#?
Ich versuche zu Lesen float
Werte aus einer binary
Datei,
public static void tmpTest ( )
{
string fileName = @"c:\debug\tmp_1.bin";
/* Write */
using ( BinaryWriter bw = new BinaryWriter ( File.Open( fileName, FileMode.Create ) ))
{
bw.Write ( 10.001f );
bw.Write ( 10.002f );
}
/* Read */
using ( BinaryReader br = new BinaryReader ( File.Open ( fileName, FileMode.Open ) ) )
{
int val_1 = br.Read (); //Output : 25
int val_2 = br.Read (); //Output : 4
}
}
Ich weiß, dass ich bin fehlt etwas an Read
Abschnitt, wenn ich lese diese Werte bekomme ich val_1
als 25
& val_2 als 4
statt 10(wie der Rückgabetyp integer), bitte leite mich, was mache ich hier falsch.
Vielen Dank im Voraus.
- Sie müssen verwenden Sie die entsprechende Methode Read beim Lesen der Nummer wieder raus
ReadSingle()
für Float,ReadDouble()
für Doppel -, etc. MSDN BinaryReader Methoden - warum bin ich runter gestimmt?? könnten Sie bitte setzen Sie Ihre Kommentare, bevor Sie nach unten abstimmen etwas.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie überprüft, die Dokumentation? Es ist ein ReadSingle Methode BinaryReader für, die.
Müssen Sie zum Lesen eines Einzelnen nicht ein Int. Wenn Sie eine int können Sie einen cast (int).
MSDN-Beispiel
Sind Sie mit Lesen, statt ReadSingle. Ich würde davon ausgehen, dass die lese-casting in ein int ist, dass einige, die Konvertierung auf Ihre Daten.
Finden Sie in der folgenden Dokumentation Artikel über Lesen und ReadSingle