Can someone help me with the following.
I want to put a button
in my program, which when clicking, write the contents of a Textbox
in a Notepad Document in the folder that we want.
Can someone help me with the following.
I want to put a button
in my program, which when clicking, write the contents of a Textbox
in a Notepad Document in the folder that we want.
Try this:
using System.IO; // Biblioteca Input/Output, importante para salvar e ler arquivos!
SaveFileDialog salvar = new SaveFileDialog(); // Cria instancia tipo SaveFileDialog
salvar.Filter = "Arquivos de Texto (*.txt)|*.txt"; // Mostra apenas arquivos de texto[opcional]
salvar.DefaultExt = "txt"; // Define a extensão padrão para arquivo de texto
DialogResult salvou = salvar.ShowDialog(); // Mostra o SaveFileDialog
if (salvou == DialogResult.Ok) // Só grava caso o usuário tenha clicado em OK
{
StreamWriter sw = null;
try
{
sw = new StreamWriter(salvar.FileName); // Cria Instancia tipo StreamWriter, para gravar o arquivo
sw.WriteLine(textbox1.Text); // Grava o conteúdo do textbox1 no arquivo
}
catch (IOException ex)
{
MessageBox.Show("IOException:\r\n\r\n" + ex.Message); // Mostra mensagem caso ocorra uma IOException
}
catch (Exception ex)
{
MessageBox.Show("Exception : \r\n\r\n" + ex.Message); //M ostra mensagem caso ocorra uma exceção que não seja do tipo IOException
}
finally
{
if (sw != null)
sw.Close(); // Fecha a instancia StreamWriter, com ou sem exceção.
}
}
else
{
// Pode por um código aqui caso o usuário clique em cancel.
}
To write the contents of a ListBox, try the following:
using System.IO; // Biblioteca Input/Output, importante para salvar e ler arquivos!
SaveFileDialog salvar = new SaveFileDialog(); // Cria instancia tipo SaveFileDialog
salvar.Filter = "Arquivos de Texto (*.txt)|*.txt"; // Mostra apenas arquivos de texto[opcional]
salvar.DefaultExt = "txt"; // Define a extensão padrão para arquivo de texto
DialogResult salvou = salvar.ShowDialog(); // Mostra o SaveFileDialog
if (salvou == DialogResult.Ok) // Só grava caso o usuário tenha clicado em OK
{
StreamWriter sw = null;
try
{
sw = new StreamWriter(salvar.FileName); // Cria Instancia tipo StreamWriter, para gravar o arquivo
for (int i = 0; i < listBox1.Items.Count; i++)
{
sw.WriteLine(listBox1.Items[i]); //Vare o listbox e grava os itens, caso tenha algum.
}
}
catch (IOException ex)
{
MessageBox.Show("IOException:\r\n\r\n" + ex.Message); // Mostra mensagem caso ocorra uma IOException
}
catch (Exception ex)
{
MessageBox.Show("Exception : \r\n\r\n" + ex.Message); //M ostra mensagem caso ocorra uma exceção que não seja do tipo IOException
}
finally
{
if (sw != null)
sw.Close(); // Fecha a instancia StreamWriter, com ou sem exceção.
}
}
else
{
// Pode por um código aqui caso o usuário clique em cancel.
}
NOTE:
It's important to close StreamWriter
so you can view the file with another application.
OBS2: Make sure you add the items in the ListBox;
Just complementing the response from @ JoãoPauloPulga , like StreamWriter
" derives from TextWriter
, and TextWriter
implements
== Only to complement the answers already given ==
You can record a file with File.WriteAllText
:
if (salvou == DialogResult.Ok)
{
File.WriteAllText(
salvar.FileName,
textbox1.Text);
}
So you do not have to work with StreamWriter
, with using
nor try/catch
, and you do not have to worry about anything else.