2010-09-19 6 views
1

Je suis en train de lire les valeurs spécifiques du fichier texte (ci-dessous):Lire fichier texte dans un tableau (Mémorisation des données numériques)

Current Online Users: 0 
Total User Logins: 0 
Server Uptime: 0 day, 0 hour, 0 minute 
Downloaded Amount: 0.000 KB 
Uploaded Amount: 0.000 MB 
Downloaded Files: 0 
Uploaded Files: 0 
Download Bandwidth Utilization: 0.00 KB/s 
Upload Bandwidth Utilization: 000.00 KB/s 

Je peux lire le fichier à un tableau:

Dim path As String = "C:\Stats.txt" 
    Dim StringArrayOfTextLines() As String = System.IO.File.ReadAllLines(path) 

Comment stocker uniquement les données dont j'ai besoin dans la baie? J'ai essayé le split et la sous-chaîne mais je ne peux pas mettre au point une méthode utilisable - j'ai besoin du texte après le deux-points pour chaque ligne.

Je pensais, je n'ai besoin que des données numériques, cela peut-il être extrait de chaque ligne plutôt que de se diviser en un tableau?

Merci.

Répondre

1

Pour capturer tout après les deux points que vous avez juste besoin de partager sur elle et prendre le deuxième élément de chaque résultat:

For Each s In StringArrayOfTextLines 
    Console.WriteLine(s.Split(":")(1).Trim()) 
Next 

Si vous voulez faire pendant que vous lisez les données que vous aurez besoin d'utiliser un StreamReader comme Joel suggested.

0

ReadAllLines fait exactement ce qu'il dit. Vous devez parcourir sur les résultats. Pour lire les données que vous voulez directement, vous devez écrire le code pour utiliser une fonction System.IO.StreamReader (et sa fonction ReadLine()) ou même simplement une base System.IO.FileStream.

Questions connexes