Jump to content

Visual Basic SaveDialog


Recommended Posts

Bom Dia,

Eu desenvolvi uma aplicação para um jogo a pedido de alguns amigos, mas estou a ter uns problemas com o botão Guardar. o Guardar como funciona perfeitamente...Alguem pode dar uma ajuda? é com alguma urgencia

If nome_fich = Nothing Then
Dim salvar As New SaveFileDialog
salvar.Filter = "*.txt|*.txt"
salvar.FileName = salvar.FileName
If salvar.ShowDialog = Windows.Forms.DialogResult.OK Then
Dim escrever As New System.IO.StreamWriter(salvar.FileName)
escrever.Write(TextBox1.Text)
escrever.Close()
End If
Else
Dim salvar As New SaveFileDialog
salvar.Filter = "*.txt|*.txt"
salvar.FileName = CStr(nome_fich)
Dim escrever As New System.IO.StreamWriter(salvar.FileName)
escrever.Write(TextBox1.Text)
escrever.Close()
End If

este é o codigo que tenho no botao salvar.

Desde ja obrigado.

Link to post
Share on other sites

Boas,

vê se é isto:

' Se não tem um ficheiro definido, pede ao utilizador
If String.IsNullOrEmpty(nome_fich) Then
' Pedir ao utilizador o ficheiro onde vai gravar o conteúdo da textbox1
Dim salvar As New SaveFileDialog
salvar.Filter = "*.txt|*.txt"
If salvar.ShowDialog = Windows.Forms.DialogResult.OK Then
	' Caso tenha confirmado um ficheiro, guardar o caminho/nome
	nome_fich = salvar.FileName
End If
End If

' Se tem o nome do ficheiro definido
If Not String.IsNullOrEmpty(nome_fich) Then
' Gravar conteúdo da textbox1 no ficheiro escolhido
Using escrever As New System.IO.StreamWriter(nome_fich, False)
	escrever.Write(TextBox1.Text)
End Using
End If
Link to post
Share on other sites

Resulta parcialmente. acontece o seguinte, eu abro um ficheiro txt edito-o e meto Guardar, em vez de apenas alterar o conteudo novo ele faz o procedimento de Guardar como... mas se editar novamente sem fechar o programar e meter guardar ele ja guarda normalmente. Não dá para fazer logo ?

Link to post
Share on other sites

Se a variavel "nome_fich" vier logo preenchida com o nome do ficheiro, já não pede o ficheiro ao utilizador.

Por isso, quando abres o txt, guarda o nome do ficheiro algures.

Ao gravar, atribuis esse nome à varivavel "nome_fich"

Link to post
Share on other sites
 Dim abrir As New OpenFileDialog
 TextBox1.Text = Nothing
 abrir.Filter = "*.txt|*.txt"
 If abrir.ShowDialog <> Windows.Forms.DialogResult.OK Then Exit Sub
 Dim myfile As String = abrir.FileName
 Dim reader As New System.IO.StreamReader(myfile)
 TextBox1.Text = reader.ReadToEnd
 nome_fich = abrir.FileName
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.