Come usare SaveFileDialog dalla casella degli strumenti

di iacofr il
11 risposte
Buongiorno a tutti ...stavo provando a salvare un file con la SaveFileDialod e ci volevo inserire anche quello che era contenuto nella textbox1. Ci sono riuscito, però non credo sia il modo giusto ...Mi fareste la gentilezza di correggermi gli errori? Sono poco pratico...grazie mille

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            saveFileDialog1.Filter = "File di testo | .txt";
            saveFileDialog1.ShowDialog();
            if(saveFileDialog1.FileName != "")
            {
                string nomeFile = saveFileDialog1.FileName;
                string scritta = textBox1.Text;
                File.AppendAllText(nomeFile, scritta);
 
            }
        }
    }
Ho controllato anche l'esempio un questo link https://docs.microsoft.com/it-it/dotnet/api/system.windows.forms.savefiledialog?view=netframework-4.7.2 ma vorrei sapere se sono due modi alternativi o il mio è completamente sbagliato? Grazie

11 Risposte

  • Premesso che la SaveFileDialog serve soltanto a scegliere il percorso e il nome del file, non si capisce di quali errori parli.
  • oregon ha scritto:


    Premesso che la SaveFileDialog serve soltanto a scegliere il percorso e il nome del file, non si capisce di quali errori parli.
    Scusa ma avendo poca praticità sbeglio anche a porre le domande...mi riferiva all'inserimento salvataggio del testo, io ho usato la classe File.AppendAllText(). Ora guardando l'esempio che mette a disposizione microsoft ho trovato un modo più elaborato e quindi chiedevo se il mio metodo potesse andar bene lo stesso. Spero di essere stato più chiaro possibile
  • Hai usato il metodo AppendAllText che aggiunge i dati nel file che hai scelto.

    Non so se il tuo scopo è aggiungere dati al file, nel qual caso il codice è corretto.
    Se invece tu vuoi salvare i dati sostituendoli nel file ogni volta, allora devi usare un altro metodo della classe File, che ti consiglio di studiare (trovi informazioni sulla classe File su MSDN online)

    In ogni caso, dovresti anche prevedere del codice per intercettare eventuali errori di scrittura dei dati, che si possono sempre verificare.
    Non è codice obbligatorio ma dovresti imparare a scriverlo, magari leggendo qualche libro di base prima di scrivere codice.
  • oregon ha scritto:


    Hai usato il metodo AppendAllText che aggiunge i dati nel file che hai scelto.

    Non so se il tuo scopo è aggiungere dati al file, nel qual caso il codice è corretto.
    Se invece tu vuoi salvare i dati sostituendoli nel file ogni volta, allora devi usare un altro metodo della classe File, che ti consiglio di studiare (trovi informazioni sulla classe File su MSDN online)

    In ogni caso, dovresti anche prevedere del codice per intercettare eventuali errori di scrittura dei dati, che si possono sempre verificare.
    Non è codice obbligatorio ma dovresti imparare a scriverlo, magari leggendo qualche libro di base prima di scrivere codice.
    Si intendevo questo...perfetto grazie. La mia intenzione era di frequentare un corso, ma a napoli ho trovato solo corsi da 25-40 ore che a mio avviso non servono a nulla. Se qualcuno è delle mie parti e magari può aiutarmi a trovare un corso efficiente mi farebbe un grosso piacere. Grazie
  • gian82 ha scritto:


    Potresti provare a vedere tra i corsi online ,un libro potrebbe esserti utile per approfondire il linguaggio ,questo è gratis https://www.introprogramming.info/wp-content/uploads/2013/07/Books/CSharpEn/Fundamentals-of-Computer-Programming-with-CSharp-Nakov-eBook-v2013.pdf
    Grazie gentilissimo...ho cercato anche qualcosa online ma sono sempre intorno alle 40 ore, non so credo che in 40 ore posso imparare cose che sto facendo da solo. Grazie
  • gian82 ha scritto:


    Https://www.microsoft.com/it-it/learning/data-exams.aspx#exam-762-section ,la formazione online sembrerebbe gratuita e piuttosto approfondita , eventualmente fai sapere come ti sei trovato
    https://www.microsoft.com/it-it/learning/data-exams.aspx

    https://www.edx.org/course/laboratorio-di-programmazione-0
    Purtroppo non sono così ferrato con l'inglese da poter seguire un intero corso e non fare troppa fatica, già in italiano e sto faticando . Gentilissimo grazie per l'aiuto
  • Invece di: File.AppendAllText(nomeFile, scritta);

    io userei: File.WriteAllText(nomeFile, scritta);

    che (scrive il file da zero, sovrascrivendolo se esiste già).

    Inoltre, secondo me, il miglior modo per imparare bene il C#, è quello di comprarti il libro in italiano "C# 7" di Antonio Pelleriti, ma ci vogliono più di 40 ore ... e soprattutto ti devi esercitare molto
  • Hai scritto in un thread del 2018 solo per fare pubblicità ad un libro?
  • Non ne ho nessun motivo. Volevo soltanto dire che con un libro, un argomento complesso come il C# si impara in maniera più approfondita. Non ho fatto caso neanche alla data del post. Inoltre, non era neanche stata data la risposta al problema.
    Oregon, sappi comunque che non mi piacciono quelli che insinuano, e che spetta al moderatore di stabilire se un post è in regola o no.
Devi accedere o registrarti per scrivere nel forum
11 risposte