https://foro.gambas-es.org/viewtopic.php?f=3&t=4650&p=26733#p26733
-----------------------------------
Shell
Miercoles, 27 May 2015, 09:09

Re: Creando Una Base De Datos. Algo Lento
-----------------------------------
Voy a crear un archivo csv a ver si con este puedo trabajar desde linea de comandos con sqlite.

[code linenumbers=false syntax=gambas]
' No usaremos expresiones regulares, usaremos funciones de cadenas

Private ruta_origen As String
Private ruta_destino As String

Public Sub Main()
  
  ruta_origen = Application.Path &/ "lista_juegos_amiga.txt"  
  ruta_destino = User.Home &/ "Temporales/base_amiga.csv"
  
  If Not Exist(ruta_destino) Then GenerarArchivoCSV()
  
End

Public Sub GenerarArchivoCSV()
  
  Dim hfile_origen, hfile_destino As File  
  Dim linea As String 
  Dim campos As New String[]
  
  hfile_origen = Open ruta_origen For Input  
  hfile_destino = Open ruta_destino For Output Create
  
  While Not Eof(hfile_origen)    
    Line Input #hfile_origen, linea
    linea = Trim(linea)      
    If Len(linea) < 1 Then Continue
    ' No quiero mostrar lineas que contengan LISTA,NOMBRE, "-" como el primer caracter de linea
    If (InStr(linea, "LISTA") = 0) And (InStr(linea, "NOMBRE") = 0) And (InStr(linea, "-") <> 1) Then
      campos = Split(Replace(linea, "  ", "\n"), "\n", Null, True)      
      Write #hfile_destino, Chr(34) & Trim(campos[0]) & Chr(34) 
      Write #hfile_destino, "," 
      Write #hfile_destino, Chr(34) & Trim(campos[1]) & Chr(34) 
      Write #hfile_destino, "," 
      Write #hfile_destino, Chr(34) & Trim(campos[2]) & Chr(34) 
      Write #hfile_destino, "," 
      Write #hfile_destino, Chr(34) & Trim(campos[3]) & Chr(34) 
      Write #hfile_destino, "\n"                         
    Endif 
  Wend
  Close #hfile_origen
  Close #hfile_destino
  
End
[/code]

Que remedio. Antes tengo que cambiarlo y crear como primera linea los nombres de los campos.
Cuando en su día hacía conversiones de csv a sqlite tenía que entrar en la consola de sqlite. Creo que sera posible hacerlo sin entrar. :-?
Tengo que bajar aquí el programa SIESTA. No es muy complicado este ejemplo que hice.  :roll: 

P.d Parece que ha cambiado la sintaxis de Write en Gambas3, donde hace referencia más bien para un Stream. Flujo de datos.

Saludos


