Hur skriver jag ut en ArrayList till en fil? Hej! Bättre att jobba med binära filer, då kan du skicka in object när du vill och läsa objectet när du vill använda den. mossa, Jodå!FileStream?
Ska jag använda FileStream enligt följande:
fs = new FileStream("test.txt", FileMode.Open);
fs.Write(testArray, 0, ????);
Eller är det bättre att använda t ex BinaryWriter?
Jag ska alltså bara spara ArrayListen i en fil för att inte tappa all data.Sv: FileStream?
Det du vill göra (om jag fattat det rätt) är att serialisera din arraylist med alla tillhörande objekt och lagra det på fil för att sedan väcka den ur sin törnrosasömn och använda den igen. För att göra detta kan du använda en valfri formatter. Nedan använder jag en binär men om du har en särskild förkärlek till xml så kan du ju välja det...
Får be så mycket om ursäkt för att jag kodade ihop det i vb.net och inte i c# i ett specifikt c# forum, men det verkade inte som om någon annan svarade...
<code>
Dim al As ArrayList = New ArrayList()
With al
.Add("MakeLove")
.Add("NotWar")
End With
Dim fs As FileStream = New FileStream("c:\object.al", FileMode.OpenOrCreate)
Dim binFormatter As BinaryFormatter = New BinaryFormatter()
binFormatter.Serialize(fs, al)
fs.Close()
al = Nothing
' The ArrayList is gone, gone gone...
fs = New FileStream("c:\object.al", FileMode.Open)
al = CType(binFormatter.Deserialize(fs), ArrayList)
fs.Close()
MsgBox(al(0))
</code>Sv: FileStream?
[Serializable]
public class FilHantering
{
string FilNamn = "Resultat";
BinaryFormatter bf = new BinaryFormatter();
FileStream fs = File.OpenWrite(FilNamn);
bf.Serialize(fs, lista); // lista e din arraylist
fs.Close();
} Sv: FileStream?
Anser du att du fått svar på din fråga kan du ju markera den som "löst" så slipper man gå in i tråden.
Mvh
MartinSv: FileStream?
Jag fick mecka lite med deserialiseringen, men löste det till slut!
Tackar så mycket för hjälpen!
/m