GRAVAR DADOS EM ARQUIVO TXT E PULAR LINHA
Estou tentando usar arquivo txt para gravar dados no vb2008. Já consegui gravar através do [Ô][Ô]sw.WriteByte(Val(AscW([Ô]T[Ô])))[Ô][Ô] ,porém não consigo pular linha para o próximo dado.
Já tentei usar vbcrlf concatenado com a informação e somente vbCrlf, mas não surte efeito nenhum.
Grato.
Já tentei usar vbcrlf concatenado com a informação e somente vbCrlf, mas não surte efeito nenhum.
Grato.
Escrita:
Leitura:
Dim Arquivo as new system.io.streamWriter ([Ô]c: este.txt[Ô])
Arquivo.write([Ô]Isto Escreve Um[Ô]) [ô]escreve sem dar nova linha
Arquivo.WriteLine ([Ô] Texto. e isto, além de escrever, inclui uma nova linha.[Ô]) [ô]escreve e dá nova linha
Arquivo.close()
Leitura:
Using Leitor as system.io.streamreader([Ô]c: este.txt[Ô])
do
dim Linha as string = Leitor.ReadLine()
if Linha is nothing then exit do
msgbox (Linha)
loop
leitor.close
end using
Obrigado pela ajuda.
A ajuda foi util, porém eu gostaria de abrir um arquivo através do openfiledialog.
quando vou associar o openfiledialog com uma streamwriter, o procedimento não é aceito e diz que não se pode carregar uma stream em uma streamwriter.
Na sequencia abaixo eu consigo gravar um dado, porem não consigo pular uma linha ( Ressaltando que eu salvo o arquivo e mantenho ele aberto continuamente).
If Button1.Text = [Ô]Iniciar[Ô] Then
Dim myStream As Stream
Dim SaveFileDialog1 As New SaveFileDialog()
SaveFileDialog1.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
SaveFileDialog1.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
SaveFileDialog1.FilterIndex = 1
SaveFileDialog1.RestoreDirectory = True
If (SaveFileDialog1.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then
Dim FileName As String = SaveFileDialog1.FileName
myStream = SaveFileDialog1.OpenFile()
If (myStream IsNot Nothing) Then
[ô]Code to write the stream goes here.
myStream.Close()
End If
[ô] TODO: Add code here to open the file.
[ô]Dim OpenFileDialog As New OpenFileDialog
[ô]Dim sw As FileStream
OpenFileDialog.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
OpenFileDialog.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
[ô]If (OpenFileDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then
[ô]Dim FileName As String = OpenFileDialog.FileName
[ô]FileName = OpenFileDialog.FileName
[ô] TODO: Add code here to open the file.
[ô]TextBox5.AppendText(OpenFileDialog.FileName)
[ô]sw = File.Open(OpenFileDialog.FileName, FileMode.Append, FileAccess.Write, FileShare.None)
sw = SaveFileDialog1.OpenFile()
[ô]End If
End If
Timer1.Enabled = True
Button1.Text = [Ô]Parar[Ô]
Timer3.Enabled = True
Else
Timer1.Enabled = False
Timer3.Enabled = False
Button1.Text = [Ô]Iniciar[Ô]
sw.WriteByte(Val((AscW([Ô]#[Ô]))))
sw.Close()
End If
Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick
Dim ValorGravado As String
Dim I As Integer
Dim J As Integer
For J = 1 To Len(DateTime.Now)
ValorGravado = Mid(TimeOfDay, J, 1)
sw.WriteByte(Val((AscW(ValorGravado))))
Next
sw.WriteByte(Val((AscW([Ô] [Ô]))))
sw.WriteByte(Val((AscW([Ô]T[Ô]))))
For I = 1 To Len(PVText1.Text)
ValorGravado = Mid(PVText1.Text, I, 1)
sw.WriteByte(Val(AscW(ValorGravado)))
Next
sw.WriteByte(Val((AscW([Ô];[Ô]))))
sw.WriteByte(Val((AscW([Ô] [Ô]))))
sw.WriteByte(Val((AscW([Ô]U[Ô]))))
sw.WriteByte(Val((AscW([Ô]R[Ô]))))
For I = 1 To Len(PVText2.Text)
ValorGravado = Mid(PVText2.Text, I, 1)
sw.WriteByte(Val(AscW(ValorGravado)))
Next
sw.WriteByte(Val((AscW([Ô]:[Ô]))))
A ajuda foi util, porém eu gostaria de abrir um arquivo através do openfiledialog.
quando vou associar o openfiledialog com uma streamwriter, o procedimento não é aceito e diz que não se pode carregar uma stream em uma streamwriter.
Na sequencia abaixo eu consigo gravar um dado, porem não consigo pular uma linha ( Ressaltando que eu salvo o arquivo e mantenho ele aberto continuamente).
If Button1.Text = [Ô]Iniciar[Ô] Then
Dim myStream As Stream
Dim SaveFileDialog1 As New SaveFileDialog()
SaveFileDialog1.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
SaveFileDialog1.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
SaveFileDialog1.FilterIndex = 1
SaveFileDialog1.RestoreDirectory = True
If (SaveFileDialog1.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then
Dim FileName As String = SaveFileDialog1.FileName
myStream = SaveFileDialog1.OpenFile()
If (myStream IsNot Nothing) Then
[ô]Code to write the stream goes here.
myStream.Close()
End If
[ô] TODO: Add code here to open the file.
[ô]Dim OpenFileDialog As New OpenFileDialog
[ô]Dim sw As FileStream
OpenFileDialog.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
OpenFileDialog.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
[ô]If (OpenFileDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then
[ô]Dim FileName As String = OpenFileDialog.FileName
[ô]FileName = OpenFileDialog.FileName
[ô] TODO: Add code here to open the file.
[ô]TextBox5.AppendText(OpenFileDialog.FileName)
[ô]sw = File.Open(OpenFileDialog.FileName, FileMode.Append, FileAccess.Write, FileShare.None)
sw = SaveFileDialog1.OpenFile()
[ô]End If
End If
Timer1.Enabled = True
Button1.Text = [Ô]Parar[Ô]
Timer3.Enabled = True
Else
Timer1.Enabled = False
Timer3.Enabled = False
Button1.Text = [Ô]Iniciar[Ô]
sw.WriteByte(Val((AscW([Ô]#[Ô]))))
sw.Close()
End If
Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick
Dim ValorGravado As String
Dim I As Integer
Dim J As Integer
For J = 1 To Len(DateTime.Now)
ValorGravado = Mid(TimeOfDay, J, 1)
sw.WriteByte(Val((AscW(ValorGravado))))
Next
sw.WriteByte(Val((AscW([Ô] [Ô]))))
sw.WriteByte(Val((AscW([Ô]T[Ô]))))
For I = 1 To Len(PVText1.Text)
ValorGravado = Mid(PVText1.Text, I, 1)
sw.WriteByte(Val(AscW(ValorGravado)))
Next
sw.WriteByte(Val((AscW([Ô];[Ô]))))
sw.WriteByte(Val((AscW([Ô] [Ô]))))
sw.WriteByte(Val((AscW([Ô]U[Ô]))))
sw.WriteByte(Val((AscW([Ô]R[Ô]))))
For I = 1 To Len(PVText2.Text)
ValorGravado = Mid(PVText2.Text, I, 1)
sw.WriteByte(Val(AscW(ValorGravado)))
Next
sw.WriteByte(Val((AscW([Ô]:[Ô]))))
meu caro amigo, o openfiledialog nao abre exatamente um arquivo, ele apenas informa o caminho do arquivo selecionado (ou melhor [Ô]Aberto[Ô]).
entao seria da seguinte forma:
o mesmo pode ser usado para o open dialog como para o save dialog.
entao seria da seguinte forma:
if openfiledialog1.showdialog() = dialogresult.ok then
[ô]nesta linha, a variavel filename ira receber o caminho do arquivo selecionado
dim FileName as string = openfiledialog1.filename
[ô]a partir de agora, que temos o caminho do arquivo, podemos criar um stream que possa ser utilizado para gravaçção ou leitura
using Arquivo as new io.streamwriter (filename)
arquivo.writeline ([Ô]escrevendo uma linha[Ô])
arquivo.close
end using
end if
o mesmo pode ser usado para o open dialog como para o save dialog.
Obrigado mais uma vez.
A função funciona perfeitamente, assim como a do colega FABIOPAGAMINI, porém o que eu preciso fazer seria aproveitar o caminho salvo no SaveFileDialog e Abrir o arquivo. O arquivo teria que permanecer aberto até que o button fosse clicado novamente, fechando o arquivo e desabilitando o timer.
Eu declarei o filestream fora da sub e funcionou, ou seja, gravou no arquivo porém o filestream só habilita Write e WriteByte que aceitam vbCrLf, mas não fazem efeito no codigo.
Obrigado mais uma vez.
A função funciona perfeitamente, assim como a do colega FABIOPAGAMINI, porém o que eu preciso fazer seria aproveitar o caminho salvo no SaveFileDialog e Abrir o arquivo. O arquivo teria que permanecer aberto até que o button fosse clicado novamente, fechando o arquivo e desabilitando o timer.
Eu declarei o filestream fora da sub e funcionou, ou seja, gravou no arquivo porém o filestream só habilita Write e WriteByte que aceitam vbCrLf, mas não fazem efeito no codigo.
Obrigado mais uma vez.
Resumo do que Preciso:
Estou criando um arquivo com um nome aleatório através do SaveFileDialog, que é aberto após um clique num button.
Dim myStream As Stream
Dim SaveFileDialog1 As New SaveFileDialog()
SaveFileDialog1.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
SaveFileDialog1.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
SaveFileDialog1.FilterIndex = 1
SaveFileDialog1.RestoreDirectory = True
If (SaveFileDialog1.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then
Dim FileName As String = SaveFileDialog1.FileName
myStream = SaveFileDialog1.OpenFile()
If (myStream IsNot Nothing) Then
[ô]Code to write the stream goes here.
myStream.Close()
End If
Se eu conseguir atribuir este nome a um streamwriter, eu consigo gravar meus dados em sequencia, pois o arquivo permanecerá aberto durante a execução do programa.
Eu consegui fazer com um FileStream, porém não consegui criar uma nova linha no arquivo.
OpenFileDialog.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
OpenFileDialog.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
FileName = OpenFileDialog.FileName
sw = SaveFileDialog1.OpenFile()
Consigo declarar [Ô]sw[Ô] como streamwriter, porém não consigo atribuir o endereço pra ele ser aberto.
Estou criando um arquivo com um nome aleatório através do SaveFileDialog, que é aberto após um clique num button.
Dim myStream As Stream
Dim SaveFileDialog1 As New SaveFileDialog()
SaveFileDialog1.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
SaveFileDialog1.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
SaveFileDialog1.FilterIndex = 1
SaveFileDialog1.RestoreDirectory = True
If (SaveFileDialog1.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) Then
Dim FileName As String = SaveFileDialog1.FileName
myStream = SaveFileDialog1.OpenFile()
If (myStream IsNot Nothing) Then
[ô]Code to write the stream goes here.
myStream.Close()
End If
Se eu conseguir atribuir este nome a um streamwriter, eu consigo gravar meus dados em sequencia, pois o arquivo permanecerá aberto durante a execução do programa.
Eu consegui fazer com um FileStream, porém não consegui criar uma nova linha no arquivo.
OpenFileDialog.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
OpenFileDialog.Filter = [Ô]Text Files (*.txt)|*.txt|All Files (*.*)|*.*[Ô]
FileName = OpenFileDialog.FileName
sw = SaveFileDialog1.OpenFile()
Consigo declarar [Ô]sw[Ô] como streamwriter, porém não consigo atribuir o endereço pra ele ser aberto.
Resolvido!
No lugar de [Ô]sw = SaveFileDialog1.Filename[Ô] eu inseri [Ô]sw = New IO.StreamWriter(SaveFileDialog1.FileName).
Tambem modifique a declaração que é feita fora da sub: [Ô]Dim sw As IO.StreamWriter[Ô].
Agradeço novamente a ajuda.
No lugar de [Ô]sw = SaveFileDialog1.Filename[Ô] eu inseri [Ô]sw = New IO.StreamWriter(SaveFileDialog1.FileName).
Tambem modifique a declaração que é feita fora da sub: [Ô]Dim sw As IO.StreamWriter[Ô].
Agradeço novamente a ajuda.
Tópico encerrado , respostas não são mais permitidas