COMO GRAVAR EM TXT SEM APAGAR O QUE SE ENCONTRA

PROGRAMADORVB6 03/09/2013 11:58:35
#428438
Olá galera, boa tarde.
Estou a tentar gravar em um ficheiro txt informação encriptada, e até consigo gravar em uma primeira vez, mas quando limpo o campo e volto a gravar os dados fico com o campo limpo , ou seja ele não grava na segunda linha do txt

Aqui fica a função para gravação e o programa.

  [ô]========= Gravar Escrita ========= 
[ô][ô][ô] <summary>
[ô][ô][ô] Grava um registo em um arquivo de texto.
[ô][ô][ô] </summary>


Public Sub Gravar_Escrita_Controle(ByRef MSG_Status As Control, ByRef Nome_Ficheiro As String)

Dim Local_Gravacao As IO.StreamWriter
If ExisteFicheiro(GetAppPath() & Nome_Ficheiro.ToString) = True Then

Try
Local_Gravacao = New IO.StreamWriter(GetAppPath() & Nome_Ficheiro.ToString, True)
For Each sLine As String In Form1.TextBox1.Lines
Local_Gravacao.WriteLine(sLine)
Next
Local_Gravacao.Close()
Local_Gravacao.Dispose()
MSG_Status.Text = [Ô]Status : Dados gravados com sucesso.[Ô]
Catch ex As Exception
MSG_Status.Text = [Ô]Status : Erro ao gravar o arquivo.[Ô]
Finally

End Try

End If

End Sub
PEGUDO 04/09/2013 13:42:12
#428481
Resposta escolhida
Cara,
Consegui resolver aqui. Mudei um pouco seu código, mas acho que é o que você precisa.
Vamos aos termos:
1. Percebi que se você abrisse o programa, criasse o log, fechasse o programa, abrisse o programa de novo e escrevesse outro log no mesmo arquivo, o programa gerava erro acusando cadeia de caracteres inválidos. Por isso, neste exemplo, o programa verifica se existe o arquivo; se existir, joga todo o conteúdo para um RichTextBox que fica invisível. Assim o programa irá criar o log de uma vez só e poderá ser aberto e fechado quantas vezes forem necessárias sem gerar o erro.

2. Vi algumas redundâncias também ao verificar se o arquivo já existia. Ao Gravar o arquivo, não era necessário ver novamente se o arquivo existia, pois o programa já fazia isto ao clicar o botão.

3. Como agora o programa grava o arquivo todo, não há necessidade de anexar o novo texto, basta criar um log novo com o texto antigo e o recente.

espero que ajude.
Tópico encerrado , respostas não são mais permitidas