nessuno (Normal User)
Guru^2
Messaggi: 6402
Iscritto: 03/01/2010
|
Non mi hai risposto ma va bene così ...
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
xamm (Normal User)
Rookie
Messaggi: 24
Iscritto: 30/09/2015
|
Scusami nessuno, hai ragione.
Avevo messo anche la s ma confondevo le seguenti istruzioni:
1) Dim nLinee As Integer = File.ReadLines("NomeFile.txt").Count()
con
2) Dim lines As String() = File.ReadAllLines("pippo.txt")
Console.WriteLine("Linee: {0}", lines.Length)
... con la seconda funziona ma sicuramente perché facevo confusione io e non per colpa vostra
Grazie
|
|
xamm (Normal User)
Rookie
Messaggi: 24
Iscritto: 30/09/2015
|
Buonasera, ulteriore domanda inerente all'argomento in oggetto.
1) seleziono una cartella:
Dim di As DirectoryInfo
Dim folder As FolderBrowserDialog = New FolderBrowserDialog
folder.SelectedPath = ("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\")
If folder.ShowDialog() = DialogResult.OK And folder.SelectedPath IsNot Nothing Then
di = New DirectoryInfo(folder.SelectedPath)
Dim DI1 As New IO.DirectoryInfo(folder.SelectedPath)
MessageBox.Show("Presenti" & " " & DI1.GetFiles.GetLength(0).ToString - 2 & " " & "file .tif + pippo.txt", "Conteggio file")
End If
2) poi scelgo il file e ne conto le righe:
Dim lines As String() = File.ReadAllLines("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\pippo.txt")
Console.WriteLine("Linee: {0}", lines.Length)
Siccome nella cartella che seleziono ci sarà sempre e solo un file txt ma che avrà sempre nomi diversi, sarebbe possibile dirgli di prendere il file .txt a prescindere dal suo nome ?
Grazie.
Massimo
|
|
Thejuster (Admin)
Guru^2
Messaggi: 2305
Iscritto: 04/05/2008
|
Codice sorgente - presumibilmente VB.NET |
'Ottengo tutti i file di tipo txt Dim files As String() = Directory. GetFiles("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\", "*.txt") 'prendo il primo file txt che trova Dim nomefile As String = files(0) 'Conto le linee Dim lines As String() = File. ReadAllLines("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\" & nomefile ) 'Stampo il numero di linee Console.WriteLine("Linee: {0}", lines.Length)
|
Ultima modifica effettuata da Thejuster il 25/11/2019 alle 17:17
|
|
xamm (Normal User)
Rookie
Messaggi: 24
Iscritto: 30/09/2015
|
Perfetto, solo che dovrei sostituire la Directory.GetFiles("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\", "*.txt")
con la folder.SelectedPath = ("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\")
|
|
Thejuster (Admin)
Guru^2
Messaggi: 2305
Iscritto: 04/05/2008
|
basta ragionarci un pò sopra.
chiedi solamente quando arrivi ad un punto morto altrimenti non imparerai mai.
la proprietà Folder.SelectedPath è di tipo Get e Set ( Get = restituisce , Set = imposta )
di conseguenza puoi sia impostare un valore, che recuperarlo.
quindi la soluzione è logica.
GetFiles(folder.SelectedPath,"*.txt")
|
|
nessuno (Normal User)
Guru^2
Messaggi: 6402
Iscritto: 03/01/2010
|
Io non ho capito ancora che problema hai avuto con la linea che ti ho proposto e perché non la usi... boh
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità. |
|
xamm (Normal User)
Rookie
Messaggi: 24
Iscritto: 30/09/2015
|
Buongiorno a tutti,
ciao nessuno, non l'ho capito neanche io ma non faccio testo in quanto zappa³ con il codice; comunque ho verificato e ho installato il NET.Framework 4.7
Ciao MiRE, ho sostituito la ("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\", "*.txt")
con GetFiles(folder.SelectedPath,"*.txt")
nel seguente modo:
'Ottengo tutti i file di tipo txt
Dim files As String() = GetFiles(folder.SelectedPath, "*.txt")
'prendo il primo file txt che trova
Dim nomefile As String = files(0)
'Conto le linee
Dim lines As String() = File.ReadAllLines("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\" & nomefile)
'Stampo il numero di linee
Console.WriteLine("Linee: {0}", lines.Length)
e mi dice che il Nome GetFiles non è dichiarato
Concettualmente non capisco un'altra cosa sicuramente banale.
Con il GetFiles(folder.SelectedPath, "*.txt") dovrei prendere tutti i file .txt contenuti nella cartella che seleziono io a manina, ok ?
Quando conto le linee dell'unico txt trovato nella cartella selezionata con File.ReadAllLines("\\192.XXX.XX.X\X\XXXXX\XXXXXXX\" & nomefile), non dovrei sostituire \\192.XXX.XX.X\X\XXXXX\XXXXXXX\ con la folder.SelectedPath ?
Grazie veramente a tutti per la disponibilità e la pazienza e comunque mi devo mettere a studiare seriamente come già mi avete suggerito.
Buona giornata
Massimo
|
|