Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá Galera!
Preciso importar uns campos de um TXT que está assim:
11111 ----- 2222222 22 222222222 3333333333 444444 55555 66666 7777 8888888888
11111 ----- 2222222 22 22222222222 2 2222222222 33333333333333 444444 5555555 666666 77777 8888888888
O que delimita um dado de outro são estes espaços como está acima... não tem ponto e virgula.
O que acontece é que já antes de utilizar o MID() os textos já vem sem estes espaços e não consigo fazer a contagem das posições, pois tem linha que há mais caracteres em um campo que outro...
Onde quero pegar o ID, PRODUTO e LABORATÓRIO já defini as posições que desejo pegar os caracteres e a variável já está indo sem os vários espaços, ai a contagem não dá certo...
Na 2ª coluna tem nomes de produtos com espaços
11111 ----- 2222222 22 222222222 3333333333 444444 55555 66666 7777 8888888888
Estou utilizando este Script:
<%
call abrecon
Server.ScriptTimeout = 100000
on error resume next
response.write "<img src='loading11.gif'>"
Dim objFSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Dim varArquivo
Set varArquivo = objFSO.OpenTextFile(server.MapPath("db/lista.txt"), 1)
dim linha
Do while not varArquivo.AtEndOfStream
linha = varArquivo.ReadLine
'linha2 = " 11111 ----- 222222222222222222 3333333333 444444 55555 66666 7777 8888888888"
id = mid(linha,2,6)
produto = mid(linha,14,52)
laboratorio = mid(linha,54,70)
devalor = mid(linha,78,86)
porvalor = mid(linha,87,95)
sqlInsert = " INSERT INTO produtos ( "
sqlInsert = sqlInsert & " id, "
sqlInsert = sqlInsert & " produto, "
sqlInsert = sqlInsert & " devalor, "
sqlInsert = sqlInsert & " porvalor, "
sqlInsert = sqlInsert & " laboratorio "
sqlInsert = sqlInsert & " ) "
sqlInsert = sqlInsert & " VALUES ( "
sqlInsert = sqlInsert & " '" & id &"', "
sqlInsert = sqlInsert & " '" & produto &"', "
sqlInsert = sqlInsert & " '" & devalor &"', "
sqlInsert = sqlInsert & " '" & porvalor &"', "
sqlInsert = sqlInsert & " '" & laboratorio &"' "
sqlInsert = sqlInsert & " ) "
'Response.Write(linha2) & "<br>"
'Response.Write(sqlInsert)
Response.Write(id) & "<br>"
Response.Write(produto) & "<br>"
Response.Write(laboratorio) & "<br>"'cn.execute(sqlInsert)
loop
varArquivo.Close
Set varArquivo = Nothing
Set objFSO = Nothing
rs.close()
set rs = nothing
call fechacon
if err > 0 then
response.write "<script>history.back(1);alert('Ocorreu algum problema na inserção.\nVerifique o layout do arquivo de texto.')</script>"
response.End()
end if
%>
O que posso fazer pra resolver isso?
Existe alguma forma mais simples de importar isso ?
Luis Carlos
Carregando comentários...