Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo
Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo
Find X9 Ultra è lo smartphone che tanti aspettavano, e finalmente è arrivato anche in Italia. Abbiamo provato il flagship di OPPO per diverse settimane, e siamo volati fino in Cina alla sua presentazione ufficiale. Tutto gira intorno al suo incredibile comparto fotografico in collaborazione con Hasselblad e con un totale di sei fotocamere. Il resto è un mix di specifiche di altissimo livello, così come il prezzo. Vi raccontiamo tutto nella nostra recensione completa.
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet
Il nuovo Deebot X12 OmniCyclone abbina un sistema di raccolta dello sporco senza sacchetto, un rullo di lavaggio esteso e la tecnologia FocusJet per intervenire più efficacemente sulle macchie più persistenti. Un robot completo e preciso che aiuta a tenere puliti i pavimenti di casa con il minimo sforzo
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2: la pulizia di casa con un mocio a nastro
Narwal Flow 2 implementa un mocio a nastro che esegue una pulizia dettagliata del pavimento di casa, in abbinamento ad un potente motore di aspirazione della polvere: un prodotto ideale per gestire in autonomia e con grande efficacia le necessità di pulizia dei pavimenti di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-01-2005, 20:07   #1
kmox
Junior Member
 
L'Avatar di kmox
 
Iscritto dal: Jan 2005
Messaggi: 13
[C] Elenco file di una directory W32

CIAO

Come faccio ad ottenere l'elenco dei soli file o delle sole sottocartelle di una determinata directory?

Uso C sotto Windows.
kmox è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 20:34   #2
VegetaSSJ5
Senior Member
 
L'Avatar di VegetaSSJ5
 
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
devi usare le api di windows, guarda qui:

http://msdn.microsoft.com/library/de..._functions.asp
VegetaSSJ5 è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 21:24   #3
kmox
Junior Member
 
L'Avatar di kmox
 
Iscritto dal: Jan 2005
Messaggi: 13
Ok anch'io avevo visto quello solo che non riesco ad utilizzarlo, così dovrebbe essere giusto ma non mi conta solo le directory ma anche i file!

Codice PHP:
//Restituisce il numero di sottocartelle di una cartella data
//va richiamato ContaCartelle("C:\\Percorso\\*")
int ContaCartellecharpercorsoRadice )
{
    
int risultato 0;
    
WIN32_FIND_DATA FindFileData;
    
HANDLE hFind INVALID_HANDLE_VALUE;

    
hFind FindFirstFilepercorsoRadice, &FindFileData );

    
//Se il file è valido cerco al suo interno le cartelle
       
if (hFind != INVALID_HANDLE_VALUE)
       {
        
//Finché esistono ancora files
          
while (FindNextFile(hFind, &FindFileData) != 0)
          {
            
//Se il file è una directory incremento il contatore
               
if ( GetFileAttributesFindFileData.cFileName ) & FILE_ATTRIBUTE_DIRECTORY )
            {
                
risultato++;
            }
          }

        
//Tolgo le due cartelle . e ..
        //-1 perche il primo file non l'avevo conteggiato
        
risultato--;

          
FindClose(hFind);

       }

       return 
risultato;
 } 
kmox è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 21:25   #4
kmox
Junior Member
 
L'Avatar di kmox
 
Iscritto dal: Jan 2005
Messaggi: 13
Per utilizzarlo va inclusa windows.h
kmox è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 21:50   #5
VegetaSSJ5
Senior Member
 
L'Avatar di VegetaSSJ5
 
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
scusa ma non dovresti usare il dwFileAttributes al posto di cFileName??
Codice PHP:
//Restituisce il numero di sottocartelle di una cartella data
//va richiamato ContaCartelle("C:\\Percorso\\*")
int ContaCartellecharpercorsoRadice )
{
    
int risultato 0;
    
WIN32_FIND_DATA FindFileData;
    
HANDLE hFind INVALID_HANDLE_VALUE;

    
hFind FindFirstFilepercorsoRadice, &FindFileData );

    
//Se il file è valido cerco al suo interno le cartelle
       
if (hFind != INVALID_HANDLE_VALUE)
       {
        
//Finché esistono ancora files
          
while (FindNextFile(hFind, &FindFileData) != 0)
          {
            
//Se il file è una directory incremento il contatore
               
if ( GetFileAttributesFindFileData.dwFileAttributes ) & FILE_ATTRIBUTE_DIRECTORY )
            {
                
risultato++;
            }
          }

        
//Tolgo le due cartelle . e ..
        //-1 perche il primo file non l'avevo conteggiato
        
risultato--;

          
FindClose(hFind);

       }

       return 
risultato;
 } 
VegetaSSJ5 è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 21:57   #6
kmox
Junior Member
 
L'Avatar di kmox
 
Iscritto dal: Jan 2005
Messaggi: 13
Quote:
Originariamente inviato da VegetaSSJ5
scusa ma non dovresti usare il dwFileAttributes al posto di cFileName??
Codice PHP:
//Restituisce il numero di sottocartelle di una cartella data
//va richiamato ContaCartelle("C:\\Percorso\\*")
int ContaCartellecharpercorsoRadice )
{
    
int risultato 0;
    
WIN32_FIND_DATA FindFileData;
    
HANDLE hFind INVALID_HANDLE_VALUE;

    
hFind FindFirstFilepercorsoRadice, &FindFileData );

    
//Se il file è valido cerco al suo interno le cartelle
       
if (hFind != INVALID_HANDLE_VALUE)
       {
        
//Finché esistono ancora files
          
while (FindNextFile(hFind, &FindFileData) != 0)
          {
            
//Se il file è una directory incremento il contatore
               
if ( GetFileAttributesFindFileData.dwFileAttributes ) & FILE_ATTRIBUTE_DIRECTORY )
            {
                
risultato++;
            }
          }

        
//Tolgo le due cartelle . e ..
        //-1 perche il primo file non l'avevo conteggiato
        
risultato--;

          
FindClose(hFind);

       }

       return 
risultato;
 } 
E' il GetFileAttributes che me lo restituisce un dwFileAttributes .

Da msdn:

DWORD GetFileAttributes(
LPCTSTR lpFileName
);
kmox è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 22:01   #7
kmox
Junior Member
 
L'Avatar di kmox
 
Iscritto dal: Jan 2005
Messaggi: 13
Come dovrebbe essere utilizzata altrimenti?
kmox è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 22:37   #8
VegetaSSJ5
Senior Member
 
L'Avatar di VegetaSSJ5
 
Iscritto dal: Sep 2002
Città: Celano (AQ) Segno_Zodiacale: Leone Ascendente: Cammello Segni_Particolari: Quello
Messaggi: 9571
prova a guardare quest'esempio, forse può esserti utile...

http://msdn.microsoft.com/library/de...attributes.asp
VegetaSSJ5 è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2005, 23:22   #9
kmox
Junior Member
 
L'Avatar di kmox
 
Iscritto dal: Jan 2005
Messaggi: 13
Diciamo che fondamentalmente mi sono basato su quell'esempio per fare la mia funzione di fatti

Codice PHP:
...

         
dwAttrs GetFileAttributes(FileData.cFileName); 
         if( 
GetLastError() != ) return;

         if (!(
dwAttrs FILE_ATTRIBUTE_READONLY)) 
         { 
           ...
         } 
           ... 
usa nello stesso modo in cui ho usato io. Boh!
kmox è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione OPPO Find X9 Ultra: è lui il cameraphone definitivo Recensione OPPO Find X9 Ultra: è lui il c...
Ecovacs Deebot X12 OmniCyclone: lava grazie a FocusJet Ecovacs Deebot X12 OmniCyclone: lava grazie a Fo...
Narwal Flow 2: la pulizia di casa con un mocio a nastro Narwal Flow 2: la pulizia di casa con un mocio a...
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Il rover NASA Curiosity ha scoperto oltr...
Il satellite AST SpaceMobile BlueBird 7 ...
SpaceX: la droneship Just Read the Instr...
Project Helix sarà prodotta anche...
La NASA pubblica alcuni aggiornamenti su...
Tute spaziali AxEMU per Artemis: Axiom S...
Nutanix Government Cloud Clusters arriva...
Troy Baker lavora a un progetto tutto su...
Motorola Edge 60 Neo è il compatt...
Stretto di Hormuz, finti funzionari iran...
Dragon Ball Xenoverse 3 annunciato uffic...
WINDTRE BUSINESS potenzia i servizi IoT ...
OPPO rinnova l'ecosistema: arrivano Watc...
OPPO Find X9 Ultra ufficiale: debutta il...
Renault Twingo: esposta a Milano per far...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:42.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v