Oppure

Loading
03/05/11 19:06
lord_texter
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?...
aaa
03/05/11 19:21
GN
Facile:
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
aaa
03/05/11 19:23
lord_texter
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:
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 03/05/11 19:28
aaa
03/05/11 19:32
GN
Beh, allora la textbox non va più bene perchè visualizza testo e non elementi; puoi usare una listbox, però nel codice di prima:
    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:

    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
aaa
03/05/11 19:34
GN
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.
aaa
03/05/11 19:41
lord_texter
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 03/05/11 19:43
aaa
03/05/11 19:47
GN
Per far visualizzare solo il nome:
    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?
aaa
03/05/11 19:49
lord_texter
visualizzarlo all'interno di una textbox...
aaa