Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Lettura di file CSV va in errore

    Ciao a tutti.

    Con il seguente codice, apro e leggo le righe di un file csv residente su un server:

    codice:
      CSVResidente = "D:\Inetpub\wwwroot\CSV\prova.csv"
    		
      Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
      strURL = CSVResidente 
    
      Set objFile = objFSO.OpenTextFile(strURL)  
      objFile.SkipLine()
    
         Do While Not objFile.AtEndOfStream
        
      	strText = objFile.readLine  	
      	arrText = split(strText, ",", 10)
    
    ...
    
         Loop
    
      Set objFSO = Nothing
     
      objFile.Close()
      Set objFile = Nothing
    Ma mi sono reso conto che se il file CSV è vuoto, cioè non contiene righe da scorrere e leggere, la procedura va in errore.

    Come posso risolvere?

  2. #2
    FSO dovrebbe avere un metodo (.FileLen?) per controllare la lunghezza del file.

  3. #3
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da optime
    FSO dovrebbe avere un metodo (.FileLen?) per controllare la lunghezza del file.
    Grazie, su google sembra che FileLen controlli il peso del file in byte... sbaglio?

    http://www.techonthenet.com/access/f...le/filelen.php

  4. #4
    peso, lunghezza ... gli è la stessa cosa, non ti pare?

  5. #5
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da optime
    peso, lunghezza ... gli è la stessa cosa, non ti pare?
    Si va bene.

    Allora ho visto che il file csv è vuoto il peso-lunghezza è pari a 1 kb ed ho scritto così nel codice:

    codice:
    CSVResidente = "D:\Inetpub\wwwroot\CSV\prova.csv"
    		
      Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
      strURL = CSVResidente 
    
      'APERTURA IF CONTROLLO LUNGHEZZA FILE CSV
         if objFSO.FileLen (strURL) > 1 then
    
      Set objFile = objFSO.OpenTextFile(strURL)  
      objFile.SkipLine()
    
         Do While Not objFile.AtEndOfStream
        
      	strText = objFile.readLine  	
      	arrText = split(strText, ",", 10)
    
    ...
    
         Loop
    
    'CHIUSURA IF CONTROLLO LUNGHEZZA FILE CSV
    end if
    
      Set objFSO = Nothing
     
      objFile.Close()
      Set objFile = Nothing
    Ma il msg d'errore è:

    Microsoft VBScript runtime error '800a01b6'

    Object doesn't support this property or method: 'FileLen'
    Che sbaglio?

  6. #6
    la proprietà è .Size (io dopo .FileLen ho messo apposta un ? perché non ero sicuro.... manco na ricerca te sai fa da solo? )

    http://msdn.microsoft.com/en-us/library/2d66skaf(VS.85).aspx


  7. #7
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da optime
    la proprietà è .Size (io dopo .FileLen ho messo apposta un ? perché non ero sicuro.... manco na ricerca te sai fa da solo? )

    http://msdn.microsoft.com/en-us/library/2d66skaf(VS.85).aspx

    Grazie, ho risolto così:

    codice:
    CSVResidente = "D:\Inetpub\wwwroot\CSV\prova.csv"
    		
      Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
      strURL = CSVResidente 
    
      Set f = objFSO.GetFile(strURL) 
    
      'APERTURA IF CONTROLLO LUNGHEZZA FILE CSV
       if f.Size > 217 then 
    
      Set objFile = objFSO.OpenTextFile(strURL)  
      objFile.SkipLine()
    
         Do While Not objFile.AtEndOfStream
        
      	strText = objFile.readLine  	
      	arrText = split(strText, ",", 10)
    
    ...
    
         Loop
    
    'CHIUSURA IF CONTROLLO LUNGHEZZA FILE CSV
    end if
    
      Set objFSO = Nothing
     
      objFile.Close()
      Set objFile = Nothing
    217 è il peso di un file csv vuoto...

  8. #8

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 © 2026 vBulletin Solutions, Inc. All rights reserved.