private void Einlesen() { if (DialogResult.No == MessageBox.Show("Möchten Sie die Daten aus einer Datei laden?", "Laden", MessageBoxButtons.YesNo, MessageBoxIcon.Question)) { //Objekte nicht aus einer Datei laden sondern einfach drei Standardobjekte erstellen for (int i = 1; i <= 3; i++) { Person p = new Person(); p.mName = ("Neue Person (" + Convert.ToString(i) + ")"); mPersonen.Add(p); } } else { //Objekte aus einer Datei laden string sPfad = Application.StartupPath + "\\MyObject.pd7"; if (DialogResult.No == MessageBox.Show("Möchten Sie die Datei im Applikationsverzeichnis lesen?", "Informationen einlesen", MessageBoxButtons.YesNo, MessageBoxIcon.Question)) { OpenFileDialog ofd = new OpenFileDialog(); ofd.Filter = "pd7 files (*.json)|*.pd7|All files (*.*)|*"; if (DialogResult.OK == ofd.ShowDialog()) { sPfad = ofd.FileName; } else { return; } } try { JsonSerializerNicola jsn = new JsonSerializerNicola(); MessageBox.Show(sPfad); Object obj = jsn.JsonDesirialize(typeof(List <Person>), sPfad); mPersonen = (List <Person>)obj; /* * FileStream myStream = new FileStream(sPfad, FileMode.Open); * BinaryFormatter binFormatter = new BinaryFormatter(); * mPersonen = (List<Person>)binFormatter.Deserialize(myStream); * myStream.Close();*/ } catch (Exception ex) { //Falls ein Fehler passiert, Fehlermeldung ausgeben MessageBox.Show(ex.Message); } } }
private void OnFormClosed(object sender, FormClosedEventArgs e) { string sPfad = Application.StartupPath + "\\MyObject.pd7"; if (DialogResult.No == MessageBox.Show("Möchten Sie die Daten im Applikationsverzeichnis speichern?", "Speichern", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "pd7 files (*.json)|*.json|All files (*.*)|*"; sfd.DefaultExt = "pd7"; if (DialogResult.OK == sfd.ShowDialog()) { sPfad = sfd.FileName; } else { return; } } JsonSerializerNicola js = new JsonSerializerNicola(); js.JsonSerialize(mPersonen, sPfad); /* string jsonString; * Person test = new Person(); * FileStream myStream = new FileStream(sPfad, FileMode.Create); * jsonString = JsonConvert.SerializeObject(test); * JsonSerializer ser = new Newtonsoft.Json.JsonSerializer();//https://www.youtube.com/watch?v=Ib3jnD158NI * * * * * * * BinaryFormatter binFormatter = new BinaryFormatter(); * binFormatter.Serialize(myStream, mPersonen); * myStream.Close(); */ }