ARQUIVO TEXT PRINTANDO TUDO EM UMA UNICA LINHA

DIEGO.DUARTE 27/11/2006 17:18:29
#186554
Boa tarde,
Por gentileza, estou efetuando uma importação de um arquivo texto, porém por algum motivo ele esta vindo em uma unica linha quando na verdade são diversas........
Ao inves de pular a linha ele apenas mostra um carcter como um retangulozinho ....
Alguem sabe me informar como posso resolver este problema para que eu possa importar o arquivo com sucesso?

Agradeço desde já,
LIONHEART 27/11/2006 17:23:25
#186556
se vc estiver tentando colocar tudo num textbox e não tiver colocado ele como MULTILINE ou algum outro componente do tipo, vai aparecer esse quadradinho mesmo.


Outra possibilidade, é fazer um replace(texto, chr(13), vbcrlf) ou replace(texto, chr(10), vbcrlf) pra tentar consertar esse erro.

Pode ser que o seu CarrierReturn (13) / LineFeed (10) não esteja sendo convertido corretamente, e pra isso, vc teria que trocar o código dele pelo correto (vbcrlf).
DIEGO.DUARTE 27/11/2006 17:35:03
#186564
Na verdade, estou IMPORTANDO o arquivo, não foi o meu software quem gerou o mesmo....
Estou tentando ler este arquivo para jogar as informações em meu sistema.....

O que ocorre é que este arquivo que me é enviado...

Vem com estes tals "quadradinhos" no local onde era pra ser dado um enter , com isso meu sistema entende tudo como sendo uma linha só....

Desde já valeu pela atenção!

Atenciosamente,
Diego
USUARIO.EXCLUIDOS 27/11/2006 17:47:05
#186574
Cara, tente ler da seguinte forma:

Dim Ln() As String
Dim f As Integer, i As Integer
f = FreeFile
Open "C:\Arquivo.txt" for input as #f
Ln = Split(Input(LOF(f), f), vbLf)
'Se não der use:
'Ln = Split(Input(LOF(f), f), vbCr)
Close #f

'Neste loop cada loop será uma linha:
For i = 0 To UBound(Ln)
MsgBox "Contúdo da linha " & (i + 1) & ":" & vbCrLf & Ln(i)
Next i


é isso, qualquer dúvida poste...flw
DIEGO.DUARTE 28/11/2006 08:25:33
#186670
Bom dia,
possivelmente dê certo este procedimento porém não entendi muito bem =/.....
O evento o qual le o arquivo esta desta forma no meu sistema:

Private Sub cmd_Importar_Click()
Dim Arquivo As String

'verifica se existe algum arquivo selecionado
If Trim(File1.Path) = "" Or Trim(File1.FileName) = "" Then Exit Sub

Arquivo = File1.Path & "\" & File1.FileName
prc_MsgBarra "Iniciando Importação"

' *** Importando dados do Bradesco
Open Arquivo For Input As #2
prc_MsgBarra "Importando Dados..."
Do While Not EOF(2)
'captura a proxima linha
Line Input #2, wrk_StrImport

If Mid(Trim(wrk_StrImport), 1, 1) = 1 Then 'Registro tipo 1 (somente este tipo interessa)

If Mid(Trim(wrk_StrImport), 109, 2) = "06" Or Mid(Trim(wrk_StrImport), 109, 2) = "17" Or Mid(Trim(wrk_StrImport), 109, 2) = "10" Then ' Liquidição título
wrk_NumDoc = Val(Mid(Trim(wrk_StrImport), 117, 10))

SQL = "Update tab_GastosCredito set vfd_FlagBaixa = 1 where vfd_NumDocumento = " & wrk_NumDoc
Cn.Execute (SQL)

End If

End If

Loop

Close #2
MsgBox "Importação realizada com sucesso!", vbInformation
prc_MsgBarra "Importação realizada!"

End Sub


-----------------------------
Talves ajude alguem para que este alguem possa me ajudar =)..

Obrigado novamente pela atenção.....
USUARIO.EXCLUIDOS 28/11/2006 08:54:49
#186691
Cara, adaptei seu código no exemplo passado pelo Matioli. Para vc ter +- uma idéia do que fazer.
Mas lembro que o mérito do código é do Matioli.


Private Sub cmd_Importar_Click()
Dim Arquivo As String

'verifica se existe algum arquivo selecionado
If Trim(File1.Path) = "" Or Trim(File1.FileName) = "" Then Exit Sub

Arquivo = File1.Path & "\" & File1.FileName
prc_MsgBarra "Iniciando Importação"

' *** Importando dados do Bradesco
Dim Ln() as String
Open Arquivo for input as #2
Ln = Split(Input(LOF(f), f), vbLf)
'Se não der use:
'Ln = Split(Input(LOF(f), f), vbCr)
Close #f

prc_MsgBarra "Importando Dados..."
DoEvents

For i = LBound(Ln) to UBound(Ln)
wrk_StrImport = Ln(i)

If Mid(Trim(wrk_StrImport), 1, 1) = 1 Then 'Registro tipo 1 (somente este tipo interessa)

If Mid(Trim(wrk_StrImport), 109, 2) = "06" Or Mid(Trim(wrk_StrImport), 109, 2) = "17" Or Mid(Trim(wrk_StrImport), 109, 2) = "10" Then ' Liquidição título
wrk_NumDoc = Val(Mid(Trim(wrk_StrImport), 117, 10))

SQL = "Update tab_GastosCredito set vfd_FlagBaixa = 1 where vfd_NumDocumento = " & wrk_NumDoc
Cn.Execute (SQL)

End If

End If

Next

MsgBox "Importação realizada com sucesso!", vbInformation
prc_MsgBarra "Importação realizada!"

End Sub

DIEGO.DUARTE 28/11/2006 09:09:28
#186696
O VB6 não reconheceu este comando SPLIT =/
USUARIO.EXCLUIDOS 28/11/2006 09:17:47
#186699
VB6???? Não reconheceu o split????

Estranho, é vb6 mesmo, pq eu sei que o vb5 não tem.

Vc tem o sp6 instalado?
USUARIO.EXCLUIDOS 28/11/2006 09:30:46
#186706
O código abaixo lê o Arquivo Cob.Txt e inclui os registros em um listBox

Private Sub CmdImportar_Click()
Dim Resgistro As String
Open "c:\Cob.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, registro
List1.AddItem registro
Loop
Close #1
End Sub

Tópico encerrado , respostas não são mais permitidas