簡體   English   中英

java讀取文件列表列表

[英]java Reading list of list of files

有人可以幫助我閱讀csv文件列表列表嗎? 喜歡

List<List<File>> filesList;

想通讀每個列表中的所有文件內容以進行處理,但是無法使用可以使用的循環結構。 謝謝。

更新:我想同時從每個內部文件列表中加載文件。 就像一次從每個內部列表中讀取第一個文件,比較內容,然后移至特定列表的第二個文件,依此類推。 每個內部列表可以具有可變大小。

這是一個合適的循環:

for (List<File> innerList : filesList) 
    for (File file : innerList) 
        // do something for a file

另外,您也可以像這樣使用Iterator

    List<ArrayList<File>> filesList = new ArrayList<ArrayList<File>>();
    //add objects to filesList here

    Iterator<ArrayList<File>> filesListIterator = filesList.iterator();

    while(filesListIterator.hasNext())
    {
        ArrayList<File> files = filesListIterator.next();

        Iterator<File> filesIterator = files.iterator();

        while(filesIterator.hasNext())
        {
            File file = filesIterator.next();
            //do your own logic here;
        }
    }  

更新
這可以幫助您進行比較

 while(filesListIterator.hasNext())
    {
        ArrayList<File> files = filesListIterator.next();

        for(int i=0;i<files.size()-1;i++)
        {
            File firstFile = files.get(i);//get a file

            File secondFile = files.get(i+1);//get the next file

            compareFiles(firstFile,secondFile);//this is your defined   
                                             //method for compare
        }
    } 
    List<List<File>> filesList;
    for (List<File> list : filesList) {
        for (File file : list) {
            // your code here ...
        }
    }

如果可以的話,我個人建議使用Google Guava,這是一種concat方法

    final List<List<File>> files = Lists.newArrayList();
    for (final File file : Iterables.concat(files)) {
        //doStuff with file
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM