Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 1999
    Messaggi
    269

    importare file di testo 49mb!!!!

    Dovrei leggerre un file di testo line by line e prendere per ogni linea per esempio:

    test1=mid(mia_linea_corrente,5,8)
    oppure
    test2=left(mia_linea_corrente,8)
    ecc..

    ed inserire il risultato delle varie variabile in una tabella HTML...

    avrei bisogno di un aiuto generoso visto che il file è olto grande credo di impegnare al massimo la memoria del pc dove si lancia l'applicazione con la pagina asp per l'import.
    Grazie.

  2. #2
    ok per la dimensione... ma quante righe sono?

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 1999
    Messaggi
    269
    Originariamente inviato da optime
    ok per la dimensione... ma quante righe sono?
    ciao, optime... (non so quale è il tuo vero nome di battesimo)
    Circa 260.000...sigh!

  4. #4
    Ma sto flie di testo che estenzione ha? Voglio dire, si tratta di un file CSV?

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 1999
    Messaggi
    269
    Originariamente inviato da Domenix
    Ma sto flie di testo che estenzione ha? Voglio dire, si tratta di un file CSV?
    No csv è un semplice file di testo tipo:
    AAAAAAAAAA BBBBBBBBBBBBBB BBBB CCCCCCCCCCC
    AAAAAAAAAA BBBBBBBBB BBBB CCCCCCCCCCC

    AAAAAAAAAA BBBBBBB BBBB CCCCCCCCCCC
    AAAAAAAAAA BBBBBBBBBBBBBB BBBB CCCCCCCCCCC
    AAAAAAA BBBBBBBBBBBBBB BBBB CCCCCCCCCCC

    e ogni riga puo essere lunga massimo 132 caratteri....

  6. #6
    Usa il driver per Text File e ti connetti al file come se fosse un database e con un ciclo di lettura prendi ogni riga come se fosse un campo.
    Documentati iniziando da qui: http://www.connectionstrings.com/?carrier=textfile .

  7. #7
    Originariamente inviato da sal21
    Circa 260.000...sigh!
    leggerle non è un problema. con fso la cosa è banale. una volta letto cosa devi farci?

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 1999
    Messaggi
    269
    Originariamente inviato da optime
    leggerle non è un problema. con fso la cosa è banale. una volta letto cosa devi farci?
    ...OK.
    Creare una tabella nella pagina asp che viene riempita mano a mano che si importamno levariabili tipo questa:

    header01 header02 header03 header04 ....headerxx
    valore var1 valore var2 valore var3 valore var4 valore varxxx
    valore var1 valore var2 valore var3 valore var4 valore varxxx
    ....
    valore var1 valore var2 valore var3 valore var4 valore varxxx

  9. #9
    una tabella di 260.000 righe è una follia. chi la legge? e poi il "via via" non si può fare. IE per esempio ti fa vedere la tabella SOLO quando è completa...

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 1999
    Messaggi
    269
    Originariamente inviato da optime
    una tabella di 260.000 righe è una follia. chi la legge? e poi il "via via" non si può fare. IE per esempio ti fa vedere la tabella SOLO quando è completa...

    sono 260.000 le righe solo che utilizzando varie condizioni if mid ecc... arrivo a 26.000
    In ogni caso ho fatto un po di codice che sembra funzioni... ora mi manca solo il modo di inserire le variabili nelle celle non so come si fa!

    codice:
    <html>
    <body>
    
    
    This is all the lines in the text file:</p>
    
    <%
    DIM RIGA
    Set fs=Server.CreateObject("Scripting.FileSystemObject")
    Set f=fs.OpenTextFile(Server.MapPath("TABULATI_132_TEST.TXT"), 1)
    
    do while f.AtEndOfStream = false
    
    RIGA=f.ReadLine
    
    If Len(trim(RIGA)) > 1 Then
    
    'RIGA=mid(RIGA,1,8)
    
    
     If InStr(Mid(RIGA, 9, 5), "TI001") > 0 Then
                    var_DIP = Trim(Mid(RIGA, 2, 4))
                    VAR_DATA = Replace(Trim(Mid(RIGA, 76, 10)), ".", "/")
                    FASE = 1
                End If
                
                  If InStr(Mid(RIGA, 1, 10), "DIPENDENZA") > 0 Then
                    var_AGE = Trim(Mid(RIGA, 22, 4))
     var_AGE_DESCR = Trim(Mid(RIGA, 27, 30))
     end if
     
     
     If InStr(Mid(RIGA, 3, 1), ".") > 0 And InStr(Mid(RIGA, 6, 1), ".") > 0 Then
                    var_ORA = Trim(Mid(RIGA, 1, 8))
                    var_TERM = Trim(Mid(RIGA, 10, 4))
                    var_MATR = Trim(Mid(RIGA, 19, 8))
                    var_TIPO = Trim(Mid(RIGA, 28, 14))
                    var_DEP = Trim(Mid(RIGA, 52, 10))
                    var_CIN = Trim(Mid(RIGA, 67, 1))
                    var_NOME = Trim(Mid(RIGA, 76, 25))
                    var_NDG = Trim(Mid(RIGA, 122, 10))
                    FASE = 3
                End If
    
    Response.Write var_DIP & " - " & VAR_DATA & " - " & var_AGE & " - " & var_AGE_DESCR  & " - " &var_ORA  & " - " &var_TERM  & " - " &var_MATR  & " - " &var_TIPO  & " - " &var_DEP  & " - " &var_CIN  & " - " &var_NOME  & " - " &var_NDG 
    
    Response.Write("
    ")
    end if
    
    loop
    
    f.Close
    Set f=Nothing
    Set fs=Nothing
    %>
    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
      <tr>
        <td width="9%"></td> qui ilvalore di var_DIP 
        <td width="9%"></td> qui ilvalore di VAR_DATA 
        <td width="9%"></td>...
        <td width="9%"></td>
        <td width="9%"></td>
        <td width="9%"></td>
        <td width="9%"></td>
        <td width="9%"></td>
        <td width="9%"></td>
        <td width="9%"></td>
        <td width="9%"></td> qui ilvalore di var_NDG 
      </tr>
    </table>
    
    </body>
    </html>
    poi credo di fare un combobox per filtrare e selezionare i valori con vari filtri....
    speriamo di riuscire entro il 2008;-)
    grazie comunque per l'interessamento, optime!.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.