Java文件读入As数组

时间:2016-11-03 07:29:54

标签: java arrays

I am really stuck here, I can't seem to read in the arrays properly.

我似乎无法将这些数组读入列中。正在寻找一个解决方案来帮助我最终用这些数字制作一个阵列。

public class TextFileInputAndOutput
{   
    public static void main(String[] args) throws IOException {
    BufferedReader reader = new BufferedReader(new FileReader("USStateCapitalsSelected.txt"));
    int lineCounter = 1;
    String line;
    while ((line = reader.readLine()) != null) {

        // parse line using any method.
        // example 1:

        Scanner intScanner = new Scanner(line);
        while (intScanner.hasNextLine()) {
            String nextInt = intScanner.nextLine();
            System.out.println(nextInt + "Herro");
            if (intScanner.hasNextDouble() == true) {
                Scanner scanner = new Scanner(line);
                while (scanner.hasNextDouble()) {
                    String nextString = scanner.next();
                    System.out.println(nextString);
                }
            }
        }


    }
  }
}

2 个答案:

答案 0 :(得分:0)

您可以使用 com.google.common.io.Files

Sample.txt的:

  

nameA labA quizeA
      nameB labB quizeB

代码:

public static void main(String[] args) throws Exception {
    File myFile = new File("Sample.txt");

    ArrayList<String> names = new ArrayList<String>();
    ArrayList<String> labs = new ArrayList<String>();
    ArrayList<String> quizes = new ArrayList<String>();

    for (String line : Files.readLines(myFile, Charset.defaultCharset())) {
        String[] cols = line.split(" ");
        names.add(cols[0]);
        labs.add(cols[1]);
        quizes.add(cols[2]);
    }

    System.out.println(names);
    System.out.println(labs);
    System.out.println(quizes);
}

答案 1 :(得分:0)

试试这个

try{
    File file = new File("filename");
    Scanner sc = new Scanner(file);
    while (sc.hasNextLine()) {
        String line = sc.nextLine();
        String[] temp = line.split(" ");

        //add values to arraylist
        names.add(temp[0]);
        labs.add(temp[1]);
        quizes.add(temp[2]);             
    }
    }catch (Exception ex) {
        ex.printStackTrace();
    }