ADICIONAR TEXTO EM TXT

DINHO256 25/08/2010 16:51:32
#351261
Boa tarde pessoal!

Ao exportar um arquivo de um programa, ele vem sem formatação nenhuma, como abaixo

00000000000000225082010160900100100

Só que eu preciso fazer com que o VB transforme-o nisso:

000000000000002 - 25/08/2010 - 16:09 - 001 - 00100

Estou usando o Write mas ele simplesmente apaga as linhas do TXT (isso porque existem vários registros semelhantes, porém que devem seguir a mesma formatação). Como posso fazer isso de modo que essa formatação seja aplicata a todo o documento?

Valeuu!

___
EDIT: Posso exibir o arquivo num TextBox também, para facilitar a edição, mas não resolveu muita coisa... =\
JONATHANSTECKER 25/08/2010 21:50:08
#351296
Veja só, tudo depende da lógica por trás desse arquivo.
Caso o arquivo esteja separado por [Ô];[Ô] ou a cada linha seja um código...

Mas assim é uma das formas de converter este texto.

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Texto As String = [Ô]00000000000000225082010160900100100[Ô]
Me.TextBox1.Text = ConverteTexto(Texto)
End Sub

Private Function ConverteTexto(ByVal Texto As String) As String
[ô] 00000000000000225082010160900100100
[ô] |||||||||||||||||||||||||||||||||||
[ô] 12345678901234567890123456789012345678901234567890
[ô] ||||||||||||||||||||||||||||||||||||||||||||||||||
[ô] 000000000000002 - 25/08/2010 - 16:09 - 001 - 00100
ConverteTexto = String.Empty
ConverteTexto += Microsoft.VisualBasic.Left(Texto, 15)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 16, 2)
ConverteTexto += [Ô]/[Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 18, 2)
ConverteTexto += [Ô]/[Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 20, 2)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 24, 2)
ConverteTexto += [Ô]:[Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 26, 2)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 28, 3)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Right(Texto, 5)
Return ConverteTexto
End Function

End Class


***EDIT: Erro de digitação.
DINHO256 26/08/2010 11:02:41
#351345
Citação:

:
Veja só, tudo depende da lógica por trás desse arquivo.
Caso o arquivo esteja separado por [Ô];[Ô] ou a cada linha seja um código...

Mas assim é uma das formas de converter este texto.

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Texto As String = [Ô]00000000000000225082010160900100100[Ô]
Me.TextBox1.Text = ConverteTexto(Texto)
End Sub

Private Function ConverteTexto(ByVal Texto As String) As String
[ô] 00000000000000225082010160900100100
[ô] |||||||||||||||||||||||||||||||||||
[ô] 12345678901234567890123456789012345678901234567890
[ô] ||||||||||||||||||||||||||||||||||||||||||||||||||
[ô] 000000000000002 - 25/08/2010 - 16:09 - 001 - 00100
ConverteTexto = String.Empty
ConverteTexto += Microsoft.VisualBasic.Left(Texto, 15)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 16, 2)
ConverteTexto += [Ô]/[Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 18, 2)
ConverteTexto += [Ô]/[Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 20, 2)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 24, 2)
ConverteTexto += [Ô]:[Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 26, 2)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Mid(Texto, 28, 3)
ConverteTexto += [Ô] - [Ô]
ConverteTexto += Microsoft.VisualBasic.Right(Texto, 5)
Return ConverteTexto
End Function

End Class


***EDIT: Erro de digitação.



Wohohoo Jonathan, funcionou... mas somente para 00000000000000225082010160900100100. Tentei declarar Text como Textbox1.text para que essa formatação seja aplicada na textbox inteira mas não funcionou, sabe me dizer por quê?

Nesse caso eu teria que usar um For para cada linha do Textbox1 não é?
Algo como

For Each Line In Textbox1.text
[ô]cod. que você passou
Next

Mas ainda assim não funcionou! uahah

Valeeu!
JONATHANSTECKER 19/03/2011 00:33:17
#368520
Já conseguiu?
FROSTYNHO 19/03/2011 12:14:46
#368556
usar um maskedtextbox num resolve?
PEGUDO 20/03/2011 07:44:12
#368601
Se teu TextBox for multiline e você quer fazer um loop entre todas as linhas existentes, o código é este:

[txt-color=#0000f0]For Each[/txt-color] Linha [txt-color=#0000f0]In[/txt-color] TexBox1.Lines
[txt-color=#007100][ô]Código...[/txt-color]
[txt-color=#0000f0]Next[/txt-color]

Abraços.
Tópico encerrado , respostas não são mais permitidas