Objekt Serialisieren



  • Hi,

    ich versuche gerade ein Objekt in C# zu "Serialisieren" aber irgendwie klappt das nicht richtig:

    Code fuer das simple Objekt:

    [Serializable]
    	public class Account
    	{
    		public Account(string name, string vorname)
    		{
    			this.name = name;
    			this.vorname = vorname;
    		}
    
    		private string name;
    		private string vorname;
    	}
    

    Und nun der Code der ausgefürht wird bei einem Buttonklick:

    try
    			{
    
    				BinaryFormatter serializer = new BinaryFormatter();
    				Account acc = new Account("Hans","Wurst");
    				Stream myFileStream = File.Create(@"C:\");
    				serializer.Serialize(myFileStream, acc);
    				myFileStream.Close();
    
    			}
    			catch(Exception exc)
    			{
    				richTextBox1.Text += exc.ToString();
    			}
    

    Diesen Code hab ich mir zusammenkopiert läasst sich auch alles einwandfrei kompilieren aber wenn ich dann auf das Button klicke bekomme ich diesesn Fehler:

    richTextBox1System.UnauthorizedAccessException: Der Zugriff auf den Pfad C:\ wurde verweigert.
       at System.IO.__Error.WinIOError(Int32 errorCode, String str)
       at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean useAsync, String msgPath, Boolean bFromProxy)
       at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize)
       at System.IO.File.Create(String path, Int32 bufferSize)
       at System.IO.File.Create(String path)
       at Spruecheklopper.Form1.button1_Click(Object sender, EventArgs e)
    

    Ich versteh nicht warum das Programm da nicht schreiben darf ich hab davor auch schon dort Dateien erstellt 😕 😕 Oder ist grundsätzlich irgendwas falsch ?



  • sagt dir diese zeile irgendwas?

    Stream myFileStream = File.Create(@"C:\");
                                         ^
    


  • Hallo,
    wie wärs mit

    Stream myFileStream = File.Create("C:\\myFile.bin");
    

    oder willst du deine ganze Partition überschreiben ?`
    mfg BlueShift



  • Peinlich Peinlich thx @all 🙂 🙂


Anmelden zum Antworten