2015-03-25 78 views
0

我有一个只包含整数文件的文件夹。用户输入写入文件,以便文件夹中的文件数量始终发生变化。如何将不同文件的数据读入数组?

这是我的代码。我想让FileReader将数据读入到数组中。我不能单独编码这样的文件,

anArray[0] = fr.read(); 
anArray[1] = fr.read(); 

因为文件的数量总是在变化。我该怎么做呢?

+1

使用'ArrayList'? – Baby 2015-03-25 02:15:42

+0

如何使用'fileArray.length'? – Harvtronix 2015-03-25 02:27:30

+0

@宝宝我会试试看,谢谢! ;) – Skripp 2015-03-25 02:36:06

回答

0

您需要有ArrayListArrayList包含文件内容。

例如:

ArrayList<ArrayList<String>> allFilesContents = new ArrayList<ArrayList<String>>(); 
    for (File file : fileArray){ 
     BufferedReader br = new BufferedReader(new FileReader(file)); 
     ArrayList<String> fileContents = new ArrayList<String>(); 
     String lineRead = null; 
     while((lineRead=br.readLine())!=null){ 
     fileContents.add(lineRead); 
     } 
     allFilesContents.add(fileContents); 
    } 
0

的ArrayList是通过文件夹和文件回路一个最好的办法。我也尝试过这样的事情:

for (File file : fileArray){ 
     // Reads each file. 
     FileReader fr = new FileReader(file); 

     int length=(int) file.length(); 
     char anArray[] = new char[length]; 
     fr.read(anArray); 
       for(char c: anArray){ 
      System.out.print(c); 
       } 
     }