Entwickler-Ecke

IO, XML und Registry - string to byte[] to file


javax - Do 24.07.08 14:02
Titel: string to byte[] to file
hallo
wie kann ich ein file aus einem byte array erstellen?

gefüllt wurde der array folgendermaßen

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
//  m_fileBytes = byte[]
// m_fileInfo = FileInfo

m_fileBytes = new byte[m_fileInfo.Length];

            FileStream fileStream = m_fileInfo.OpenRead();
            fileStream.Read(m_fileBytes, 0, m_fileBytes.Length);
            fileStream.Close();


wär echt dankbar wen ihr mir helfen könntet11
mfg


Christian S. - Do 24.07.08 14:11

Mit File.Create bekommst Du den FileStream zu einer neuen Datei. Und analog zur Read-Methode hat der FileStream dann auch eine Write-Methode.


javax - Fr 25.07.08 06:39

danke für die antwort. file ist angelegt!

eine frage habe ich jedoch noch...
wie kann ich aus einem bytearray den dateinamen (vll. sogar FileInfo) auslesen?
mfg


Christian S. - Fr 25.07.08 10:17

user profile iconjavax hat folgendes geschrieben:
wie kann ich aus einem bytearray den dateinamen (vll. sogar FileInfo) auslesen?

Hm. Ich glaube nicht, dass der Dateiname da noch existiert. Denn das Byte-Array enthält ja nur den Inhalt der Datei. Aber wenn Du die Datei eingelesen hast, musst Du Dir an der Stelle ja nur den Dateinamen "merken".


javax - Fr 25.07.08 10:28

ja du hast recht.

eine frage hät ich noch^^
ich speichere den byte[] plus den namen in einer xml.

habe den byte[] mittels
System.Text.Encoding.ASCII.GetString(anhang.FileBytes,0,anhang.FileBytes.Length)
in einen string umgewandelt und erstelle aus diesem string wieder ein byte[] mittels
System.Text.Encoding.GetEncoding(1252).GetBytes(strFileBytes)

wenn anhand dieses byte[] ein file erstelle und öffne wird mir ein fehler angezeigt (datei fehlerhaft)
woran könnte das liegen?

mfg



edit:
sry... hat sich schon länger erledigt