J'ai un fichier .txt que je veux lire dans mon programme. Je dois prendre les valeurs pour l'achat et le prix et les stocker dans un ArrayList de nombres entiers. Par exemple:Comment stocker int à partir du fichier, à Arraylist utilisant StringTokenizer dans Java?
"acheter 50 prix 30"
Je dois insérer 50 dans le ArrayList acheter et 30 dans le prix ArrayList.
import java.io.BufferedReader;
import java.util.StringTokenizer;
import java.io.FileReader;
import java.io.IOException;
import java.util.List;
import java.util.ArrayList;
public class Store {
public static void main(String[] args) {
BufferedReader br = null;
List <Integer> buy = new ArrayList<>();
List <Integer> price = new ArrayList<>();
// try to read the file
try {
br = new BufferedReader(new FileReader("Nets.txt"));
String line;
while ((line = br.readLine()) != null) {
line = line.trim();
line = line.replaceAll("/t", "");
line = line.toLowerCase();
StringTokenizer st = new StringTokenizer(line);
while (st.hasMoreTokens()) {
//Don't know what to do
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
expliquer le problème, pas seulement ce que vous voulez faire – jfun
De [javadoc] (http://docs.oracle.com/javase/7/docs/api/java/util/StringTokenizer.html): * "' StringTokenizer' est une classe héritée qui est conservée pour des raisons de compatibilité bien que son utilisation soit déconseillée dans le nouveau code Il est recommandé que quiconque recherche cette fonctionnalité utilise à la place la méthode 'split' de' String' ou le paquet 'java.util.regex' . "* --- Regex serait parfait pour cela:' "(? I) \\ s * acheter \\ s + (\\ d +) \\ s + prix \\ s + (\\ d +) \\ s *" ' – Andreas