S saw Medlem sedan mars 2001 1 880 inlägg Trådstart 22 nov. 2003 12:41 #1 Någon som kan hjälpa mig med en funktion för binary read, som läser byte för byte?
S SPiN Medlem sedan mars 2000 7 896 inlägg Vad jag har förstått så går inte det riktigt i C/C++, eftersom att det inte finns någon datatyp som definierar en byte. Det närmaste du kommer är i så fall en char, som är definierad som åtta bitar. Alltså; Läs en char i taget så läser du åtta bitar - en byte - i taget. Vad vill du egentligen åstadkomma?
System.IO.BinaryReader() ???
S SPiN Medlem sedan mars 2000 7 896 inlägg Ooh, jag var i fel forum... Sorry.
S saw Medlem sedan mars 2001 1 880 inlägg Backgrund:
Jag försöker att läsa en sty-fil, för att kunna förska förstå hur stylerna in min JORG PA 80(Keyboard) fungera.
Jag har sökt ganska länge och kommit hit:
BinaryReader binReader = new BinaryReader(File.Open(filnamn, FileMode.Open));
if(binReader.PeekChar() != -1)
{
rText.Text = binReader.ReadString();
//rText.Text= r.ReadString().Replace(null,"");
binReader.Close();
}
Det händer ingenting när jag kör denna koden, men jag får inga fel heller...
Jag har också för mig att man skall köra en replace, men gör jag det , DÅ kommer error.
G Gladh Medlem sedan maj 2001 2 812 inlägg rText.Text = binReader.ReadString();
För att göra en ReadString() så tror jag att din ström måste ha blivit skapad en BinaryWrite, vilket den säkert inte har.
Du borde använda vanliga Read() som läser en byte itaget tills du nått slutet på strömern.
Alltså något sånt här om jag kommer ihåg rätt.
readerNOTEOF = true;
While(readerNOTEOF){
byte b = binReader.Read();
if(b == -1)
readerNOTEOF = false;
else
console.write(b);
}
Men reservartion för feltänk
- M
}
S saw Medlem sedan mars 2001 1 880 inlägg Jag har kommot så här långt:
if((myStream = openFileDialog1.OpenFile())!= null)
{
Byte[] myBytes = new Byte[myStream.Length];
int i = myStream.Read(myBytes,0,myBytes.Length);
rText.Text = System.Text.Encoding.UTF8.GetString(myBytes);
myStream.Close();
}
Jag kan öppna väldigt mycket, men inte se mina sty-filer...
I VB kude jag skriva så här:
sFil = Label1.Caption
Text1.Text = ""
Open sFil For Binary As #1
strRow = String(LOF(1), " ")
Get #1, , strRow
strText = Replace(strRow, vbNullChar, "")
'strText = Replace(strRow, vbNullChar, " ")
Text1.Text = strText
Men i C# så verkar det värre...