quarta-feira, 20 de novembro de 2002

Importar .Txt

Ola pessoal, sou novo aqui no site, e quero contribuir com algo que quebrei a cabeça um bom tempo até conseguir fazer! Espero poder ajudar alguém com esse código! Abraços a todos


 


<%
'Selecionando todos os registros da tabela, no nosso caso vou importar os Clientes
executar = "select * from clientes"
set rs = server.createobject("ADODB.Recordset")
rs.open executar, conn, 3, 3


'Bom no nosso caso eu preciso deletar todos os registros antes de importa-los novamente
'Se você não precisar pode tirar essa parte
sql = "delete from clientes"
conn.execute(sql)


'Aqui eu crio o objeto, defino onde está o .txt
Set fs = Server.CreateObject("Scripting.FileSystemObject")
caminho = Server.Mappath("txt/clientes.txt")
Set txt = fs.OpenTextFile(caminho, 1,0)


'É aqui que eu leio o txt e gravo no banco
while (not txt.AtEndOfStream) and response.isclientconnected()
 linha_txt = txt.readline
 arrayx = split(linha_txt,"|") 'No meu .txt o caracter que separa cada campo é um |, se no seu for outro é so colocar aqui
  
 'Abro um novo registro e coloco os dados do txt na tabela, cara array é um campo ou uma coluna do txt
 'Se o seu .txt tem por exemplo Codigo | Nome
 'fica assim
 'rs.addnew
 'if arrayx(0) <> "" then rs("codigo") = array(0)
 'if arrayx(1) <> "" then rs("nome") = array(1)
 'rs.update
 'Você vai modificar de acordo com o .txt
 rs.addnew
  if arrayx(0) <> "" then rs("codigo") = arrayx(0)
  if arrayx(1) <> "" then rs("razao") = arrayx(1)
  if arrayx(2) <> "" then rs("nome") = arrayx(2)
  if arrayx(3) <> "" then rs("municipio") = arrayx(3)
  if arrayx(4) <> "" then rs("uf") = arrayx(4)
  if arrayx(5) <> "" then rs("codatividade") = arrayx(5)
  if arrayx(6) <> "" then rs("atividade") = arrayx(6)
  
 rs.update
wend 


txt.close


set txt = nothing
set fs = nothing


conn.close
set conn = nothing
%>



Esta matéria foi postada originalmente no ASP4Developers por Márcio Fábio Althmann (site), que na época era "Programador ASP, adoro trabalhar com Flash, principalmente combinar as duas tecnologias.
E amo Heavy Metal! hehe". Hoje, vai saber...

0 comentários: