10,58,563,4442,4
156,45,55
256
555,8582,5,54,
555,55
5
上面是TXT文件中的数字的一小部分,请教高手,如何将它们输入到数组中去,每一行输入到一个数组里去。
我设想是这样子可以将每行有两个数字的情形输入,像上面的情况每行数字个数不定的,怎么办呢
BufferedReader in = new BufferedReader(new FileReader(s2)); 
    String s = new String(); 
    while((s = in.readLine())!= null) 
    {
     int sub1=Integer.parseInt(s.substring(0,s.indexOf(",")));
     System.out.println(sub1);
     int sub2=Integer.parseInt(s.substring(s.indexOf(",")+1));
     System.out.println(sub2);
    } 
    in.close(); */谢谢!!

解决方案 »

  1.   

    直接用 split()不就可以了?
    s.split(",");
      

  2.   

    import java.io.*;public class FileReadDemo2
    {
        public static void main(String[] args)
        {
            File file;
            file= new File("test.txt");
            String line;
            String[] tokens;
            try{
                BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
                while((line = in.readLine()) != null){
                    tokens = line.split(",");
                    for (String token : tokens) {
                        System.out.println(Integer.parseInt(token));
                    }
                }
            }catch(FileNotFoundException e){
                System.err.println("Failed to access file!");
            } catch (IOException e) {
                System.err.println("Failed to read numbers.");
            }
        }
    }
      

  3.   

    ufferedReader in = new BufferedReader(new FileReader(s2));
    List list = new ArrayList();while((s = in.readLine())!= null)
    {
       list.add(s.split(",");
    }
    in.close(); */
      

  4.   

    String[] s=s.split(",")即可..不过可能逗号不能用来分割,你可以先把逗号换成#或&等不常用字符然后再分割.