
lord_texter (Normal User)
Rookie
    
Messaggi: 36
Iscritto: 11/01/2011
|
salve a tutti, sto cercando un modo per fare apparire all'interno di una textbox multiline tutti i file contenuti nella cartella dove l'eseguibile dell'app viene avviato.
In pratica vorrei fare in modo che cliccando su un button mi vengano mostrati in questa textbox i nomi dei file presenti ovviamente solo quelli con estensione .txt
Qualcuno può aiutarmi?...
|
|

GN (Member)
Guru
    
Messaggi: 772
Iscritto: 30/04/2011
|
Facile:
Codice sorgente - presumibilmente VB.NET |
For Each Elemento As String In My.Computer.FileSystem.GetFiles(Application.StartupPath, FileIO.SearchOption.SearchTopLevelOnly, "*.txt") 'per ogni file txt nella cartella dell'applicazione TextBox1.Text &= Elemento & Chr(13) 'aggiungi alla textbox il suo percorso e un ritorno a capo. Next
|
|
|

lord_texter (Normal User)
Rookie
    
Messaggi: 36
Iscritto: 11/01/2011
|
Che sciocco che sono, grazie mille!! ;D..una cosa, e se volessi che cliccando su uno dei file in lista questo venga visualizzato?
un'ultima cosa, visto che la textbox mi dà come risposta:
Codice sorgente - presumibilmente Plain Text |
C:\Users\pro\documents\visual studio 2010\Projects\progetto database clienti\progetto database clienti\bin\Debug\c.txt
C:\Users\pro\documents\visual studio 2010\Projects\progetto database clienti\progetto database clienti\bin\Debug\federicagiordano.txt
|
non ci sarebbe un modo per visualizzare solo il nome del file?
Ultima modifica effettuata da lord_texter il 03/05/2011 alle 21:28 |
|

GN (Member)
Guru
    
Messaggi: 772
Iscritto: 30/04/2011
|
Beh, allora la textbox non va più bene perchè visualizza testo e non elementi; puoi usare una listbox, però nel codice di prima:
Codice sorgente - presumibilmente VB.NET |
For Each Elemento As String In My.Computer.FileSystem.GetFiles(Application.StartupPath, FileIO.SearchOption.SearchTopLevelOnly, "*.txt") 'per ogni file txt nella cartella dell'applicazione TextBox1.Items.Add(Elemento )'aggiungi alla listbox un elemento con il suo percorso. Next
|
Poi intercetti l'evento SelectedIndexChanged ricavi la stringa del contenuto del file:
Codice sorgente - presumibilmente VB.NET |
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged Dim Stringa As String= My.Computer.FileSystem.ReadAllText(ListBox1.selectedItem) End Sub
|
|
|

GN (Member)
Guru
    
Messaggi: 772
Iscritto: 30/04/2011
|
Postato originariamente da lord_texter:
non ci sarebbe un modo per visualizzare solo il nome del file?
|
Basta che crei un nuovo oggetto IO.File utilizzando come parametro il percorso e poi ne ricavi la proprietà Name. |
|

lord_texter (Normal User)
Rookie
    
Messaggi: 36
Iscritto: 11/01/2011
|
ho sistemato tutto come da te indicato non riesco però a capire come fare a far in modo che quando clicco su un elemento della listbox, quest'ultimo venga visualizzato
non riesco neanche a far in modo che venga visualizzato solo il nome...scusa per l'ignoranza
Ultima modifica effettuata da lord_texter il 03/05/2011 alle 21:43 |
|

GN (Member)
Guru
    
Messaggi: 772
Iscritto: 30/04/2011
|
Per far visualizzare solo il nome:
Codice sorgente - presumibilmente VB.NET |
For Each Elemento As String In My.Computer.FileSystem.GetFiles(Application.StartupPath, FileIO.SearchOption.SearchTopLevelOnly, "*.txt") 'per ogni file txt nella cartella dell'applicazione Dim ilmiofile As New IO. File(Elemento ) ListBox1.Items.Add(ilmiofile.Name)'aggiungi alla listbox un elemento con il suo percorso. Next
|
Per la storia del clic non ho capito: cosa deve fare il programma con il contenuto del file? Visualizzarlo in una label o cosa?
|
|

lord_texter (Normal User)
Rookie
    
Messaggi: 36
Iscritto: 11/01/2011
|
visualizzarlo all'interno di una textbox...
|
|

lord_texter (Normal User)
Rookie
    
Messaggi: 36
Iscritto: 11/01/2011
|
Postato originariamente da GN:
Per far visualizzare solo il nome:
Codice sorgente - presumibilmente VB.NET |
For Each Elemento As String In My.Computer.FileSystem.GetFiles(Application.StartupPath, FileIO.SearchOption.SearchTopLevelOnly, "*.txt") 'per ogni file txt nella cartella dell'applicazione Dim ilmiofile As New IO. File(Elemento ) ListBox1.Items.Add(ilmiofile.Name)'aggiungi alla listbox un elemento con il suo percorso. Next
|
|
mi riporta il seguente errore: name non è un elemento di system.io.file e il tipo system.io.file non ha costruttori |
|