Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] SaveFileDialog, Problema Eccezioni
Forum - C# / VB.NET - [C#] SaveFileDialog, Problema Eccezioni

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 1:00
Giovedì, 01/01/1970
Questo topic è stato chiuso dal moderatore

Ciao ragazzi, sto scrivendo un programma per crittare del testo.
Ho definito questa procedura per salvare il file crittografato:

Codice sorgente - presumibilmente C++

  1. private void frmCrypter_SalvaFileCriptato()  
  2.         {
  3.            SaveFileDialog SalvaFile = new SaveFileDialog();
  4.            SalvaFile.DefaultExt = "*.cry";
  5.            SalvaFile.Filter = "File Crittato (*.cry)|*.cry";
  6.            SalvaFile.ShowDialog();
  7.            FileStream Fs = new FileStream(SalvaFile.FileName, FileMode.CreateNew);
  8.            BinaryWriter Bw = new BinaryWriter(Fs);
  9.            Bw.Write(txbTestoCrittato.Text.ToString());
  10.            Bw.Close();
  11.            Fs.Close();
  12.            pgrBarraProgresso.Value = 100;
  13.            MessageBox.Show("Il file crittato è stato salvato correttamente!", "Operazione Riuscita", MessageBoxButtons.OK, MessageBoxIcon.Information);
  14.            pgrBarraProgresso.Value = 0;          
  15.         }



I problemi sono i seguenti:

Se il file che scrivo esiste gia dice: I/O Exception non gestita.
Se chiudo la finesta senza aver salvato niente: Argument Exception.

Come faccio a risolvere i problemi?
Vorrei ottenere una finesta per il salvataggio senza tanti problemi
Grazie ragazzi, sono agli inizi.

PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 15:44
Venerdì, 03/07/2009
Leggiamola la documentazione per imparare

http://msdn.microsoft.com/it-it/library/system.io.filemode ...

specialmente quando si parla di Create e CreateNew ...


- Se le mie risposte non vi soddisfano, ignoratele, altrimenti un "grazie" e' molto gradito ...

"Dai un pesce (programma) a un uomo e lo nutrirai per un giorno. Insegnagli a pescare (programmare) e lo nutrirai per tutta la vita." (niente pappa pronta)
PM
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 20:29
Venerdì, 03/07/2009
Certo, grazie per il link alla documentazione, non trovavo questa pagina. :rofl:

Ho risolto un problema ma quando, se per errore entro nella procedura e ne voglio uscire per mezzo dell'apposito tasto X, come qualunque programma, mi dice ArgumentException, percorso non valido.
E' come se volesse che venisse per forza generato un file...


Ultima modifica effettuata da il 03/07/2009 alle 20:35
PM
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 20:43
Venerdì, 03/07/2009
Scusate, ho risolto ora con un ciclo try-catch del tipo:

Codice sorgente - presumibilmente C# / VB.NET

  1. try
  2. {
  3. ...
  4. }
  5. catch (ArgumentException)
  6. {
  7. return;
  8. }



Però non mi piace, mi spiegate perchè da questo errore?

Ultima modifica effettuata da il 03/07/2009 alle 20:44
PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 20:48
Venerdì, 03/07/2009
Testo quotato

Postato originariamente da 7h3.c0r3:

Certo, grazie per il link alla documentazione, non trovavo questa pagina. :rofl:

Ho risolto un problema ma quando, se per errore entro nella procedura e ne voglio uscire per mezzo dell'apposito tasto X, come qualunque programma, mi dice ArgumentException, percorso non valido.
E' come se volesse che venisse per forza generato un file...




Non ho capito ... cosa hai scritto alla fine in base alla documentazione che ti ho indicato?


- Se le mie risposte non vi soddisfano, ignoratele, altrimenti un "grazie" e' molto gradito ...

"Dai un pesce (programma) a un uomo e lo nutrirai per un giorno. Insegnagli a pescare (programmare) e lo nutrirai per tutta la vita." (niente pappa pronta)
PM
Avatar
Gianluca87 (Ex-Member)
Expert


Messaggi: 300
Iscritto: 16/11/2008

Segnala al moderatore
Postato alle 21:01
Venerdì, 03/07/2009
beh i/o exception fa pensare a un errore nell'argomento probabilmente un simbolo che nella codifica di caratteri in input non viene riconosciuto quindi sicuramente nella codifica si è perso qualcosa...try catch su una cosa del genere non ha molto senso credo rischi di non riuscire a recuperare ciò che codifichi


a domanda precisa, risposta precisa...
a domanda generica, risposta generica...
PM
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 23:18
Venerdì, 03/07/2009
No, ragazzi, mi sono espresso male, ora ve lo rispiego.
Il problema dell'I/O se un file con lo stesso nome esiste gia l'ho risolto.
Ora il problema è il seguente.

1) Io richiamo la procedura dopo l'evento click.
2) Viene aperta la finestra di dialogo per salvare.
3) Mettiamo caso che ho sbagliato a cliccare e ora voglio uscire dalla finestra dialogo per tornare alla form principare. Se lo faccio cliccando la X di chiudi, mi dice ArgumentException, path non valida ma io non volevo assolutamente passare la programma una path non valida, volevo solamente chiudere la form riguardante il salvataggio del file!

Tutto chiaro? Grazie.

PM
Avatar
theprogrammer (Normal User)
Guru^2


Messaggi: 2509
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 23:28
Venerdì, 03/07/2009
Codice sorgente - presumibilmente C# / VB.NET

  1. if (SalvaFile.ShowDialog() == DialogResult.OK)
  2. {
  3.   // qui inserisci la gestione del salvataggio con il filestream
  4. }



Ultima modifica effettuata da Il Totem il 04/07/2009 alle 8:48


- Se le mie risposte non vi soddisfano, ignoratele, altrimenti un "grazie" e' molto gradito ...

"Dai un pesce (programma) a un uomo e lo nutrirai per un giorno. Insegnagli a pescare (programmare) e lo nutrirai per tutta la vita." (niente pappa pronta)
PM
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 23:35
Venerdì, 03/07/2009
Riguarda sempre lo stesso topic.
Comunque credo che tu mi abbia risolto il problema.
Grazie! :k:

PM
Pagine: [ 1 2 ] Precedente | Prossimo