从文本文件中获取整数并在java中处理数组列表

从文本文件中获取整数并在java中处理数组列表,java,arrays,file,arraylist,io,Java,Arrays,File,Arraylist,Io,我有一个文本文件,其中包含:“我有3个苹果和1个香蕉。所有人至少有4辆车。” 我想读取这个.txt文件并从中获取整数。我将在arrayList中选择整数变量 公共类dedede{ public static void al()引发异常{ 文件f=新文件(“C:\\users\\sony\\Desktop\\456.txt”); 试一试{ FileReader islem=新的FileReader(f); 字符数据[]=新字符[(int)f.length()]; islem.read(数据); 字

我有一个文本文件,其中包含:

“我有3个苹果和1个香蕉。
所有人至少有4辆车。”

我想读取这个.txt文件并从中获取整数。我将在arrayList中选择整数变量

公共类dedede{
public static void al()引发异常{
文件f=新文件(“C:\\users\\sony\\Desktop\\456.txt”);
试一试{
FileReader islem=新的FileReader(f);
字符数据[]=新字符[(int)f.length()];
islem.read(数据);
字符串metin=新字符串(数据);
ArrayList yapi=新的ArrayList();
StringTokenizer s=新的StringTokenizer(metin);
字符串dizi[]=新字符串[s.countTokens()];
int i=0;
而(s.hasMoreTokens()){
dizi[i]=s.nextToken();
i++;
}
for(int c=0;c0){
yapi.add(Integer.parseInt(dizi[c]);
}
}
System.out.println(yapi);
}捕获(IOE异常){
e、 printStackTrace();
}
}
公共静态void main(字符串[]args)引发异常{
al();
}
}
试试这个:

static ArrayList<Integer> al = new ArrayList<Integer>();

public static void main(String[] args) {

    try {
        File file = new File("C:\\users\\sony\\Desktop\\456.txt");
        BufferedReader in = new BufferedReader(new FileReader(file));
        String s; 
        while ((s = in.readLine()) != null) {
            findInteger(s);
        }
        in.close();
    } catch (IOException e) {
        System.out.println("File Read Error: " + e.getMessage());
    }
    System.out.println("Integers: " + al);
}

private static void findInteger(String s){
    String [] parts = s.split(" ");

    for (int i = 0; i < parts.length; i++) {
        try{
            int j = Integer.parseInt(parts[i]);
            al.add(j);
        } catch (Exception e){}
    }
}
static ArrayList al=new ArrayList();
公共静态void main(字符串[]args){
试一试{
File File=新文件(“C:\\users\\sony\\Desktop\\456.txt”);
BufferedReader in=新的BufferedReader(新文件读取器(文件));
字符串s;
而((s=in.readLine())!=null){
findInteger(s);
}
in.close();
}捕获(IOE异常){
System.out.println(“文件读取错误:+e.getMessage());
}
System.out.println(“整数:+al”);
}
私有静态void findInteger(字符串s){
字符串[]部分=s.split(“”);
对于(int i=0;i
您遇到了什么问题?我想编程读取文件识别整数并将它们存储在数组中。除了您的代码,您应该在运行时指出您遇到的问题,或者对您的结果有任何疑问。谢谢。您帮了我很大的忙,我刚刚错过了一些非常简单的东西:)
static ArrayList<Integer> al = new ArrayList<Integer>();

public static void main(String[] args) {

    try {
        File file = new File("C:\\users\\sony\\Desktop\\456.txt");
        BufferedReader in = new BufferedReader(new FileReader(file));
        String s; 
        while ((s = in.readLine()) != null) {
            findInteger(s);
        }
        in.close();
    } catch (IOException e) {
        System.out.println("File Read Error: " + e.getMessage());
    }
    System.out.println("Integers: " + al);
}

private static void findInteger(String s){
    String [] parts = s.split(" ");

    for (int i = 0; i < parts.length; i++) {
        try{
            int j = Integer.parseInt(parts[i]);
            al.add(j);
        } catch (Exception e){}
    }
}