第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用Java從文件夾中的所有文件中一一讀取數(shù)據(jù)?

如何使用Java從文件夾中的所有文件中一一讀取數(shù)據(jù)?

幕布斯7119047 2021-09-26 16:42:00
如何使用Java從文件夾中的所有文件(一個一個)中讀取數(shù)據(jù)?此代碼僅返回文件名,我正在尋找更深入的搜索:File folder = new File("/home/user_name/Downloads/textfiles/");File[] listOfFiles = folder.listFiles();for (File file : listOfFiles) {    if (file.isFile()) {        System.out.println(file.getName());    }}
查看完整描述

3 回答

?
飲歌長嘯

TA貢獻1951條經(jīng)驗 獲得超3個贊

你可以在沒有任何外部庫的情況下,只使用 java.nio。


程序如下:


代碼采用路徑 asString并從中創(chuàng)建一個路徑(在此示例中java.nio.Path使用常量String路徑完成)。然后它準備一個Map<String, List<Strings>將文件名及其內(nèi)容存儲為String每行一個的。在此之后,它會讀取使用的目錄內(nèi)容DirectoryStream<Path>從java.nio中進入的文件路徑,并同時存儲列表,內(nèi)容閱讀Files.readAllLines(Path path)的List<String>,并在絕對文件路徑Map。


最后,它只是打印出讀取的所有內(nèi)容,由一行長破折號分隔...


試試吧,也許對你的搜索有幫助。


import java.io.IOException;

import java.nio.file.DirectoryStream;

import java.nio.file.Files;

import java.nio.file.Path;

import java.nio.file.Paths;

import java.util.ArrayList;

import java.util.List;

import java.util.Map;

import java.util.TreeMap;


public class FileContentReader {


    private static final String FOLDER_PATH = "Y:\\our\\destination\\folder\\";


    public static void main(String[] args) {

        Path folderPath = Paths.get(FOLDER_PATH);


        // prepare a data structure for a file's name and content

        Map<String, List<String>> linesOfFiles = new TreeMap<String, List<String>>();


        // retrieve a list of the files in the folder

        List<String> fileNames = new ArrayList<>();

        try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(folderPath)) {

            for (Path path : directoryStream) {

                fileNames.add(path.toString());

            }

        } catch (IOException ex) {

            System.err.println("Error reading files");

            ex.printStackTrace();

        }


        // go through the list of files

        for (String file : fileNames) {

            try {

                // put the file's name and its content into the data structure

                List<String> lines = Files.readAllLines(folderPath.resolve(file));

                linesOfFiles.put(file, lines);

            } catch (IOException e) {

                e.printStackTrace();

            }

        }


        // finally, print everything

        linesOfFiles.forEach((String fileName, List<String> lines) -> {

            System.out.println("Content of " + fileName + " is:");

            lines.forEach((String line) -> {

                System.out.println(line);

            });

            System.out.println("————————————————————————————————");

        });

    }

}


查看完整回答
反對 回復(fù) 2021-09-26
?
侃侃無極

TA貢獻2051條經(jīng)驗 獲得超10個贊

標準的 Java 8 方法是簡單地迭代Path給定目錄中的所有s:


Path inputDir = Paths.get("path/to/dir");

if (Files.isDirectory(inputDir)) {

    List<Path> filePaths = Files.list(inputDir).collect(Collectors.toList());

    for (Path filePath : filePaths) {

        // Load file contents...

    }

}

您放入循環(huán)中的內(nèi)容取決于您的需要。您可以Reader根據(jù)要使用的內(nèi)存量和性能要求等,制作一個, 流式輸出甚至內(nèi)存映射它。


查看完整回答
反對 回復(fù) 2021-09-26
?
撒科打諢

TA貢獻1934條經(jīng)驗 獲得超2個贊

使用 commons-io


    <dependency>

        <groupId>commons-io</groupId>

        <artifactId>commons-io</artifactId>

        <version>2.6</version>

    </dependency>



public static void main(String[] args) {

    try {

        File files = new File("\\home\\folder");

        for (File file : files.listFiles()) {

            List<String> lines = FileUtils.readLines(file);

            System.out.println();

            System.out.println();

            System.out.println("******" + file.getName());

            for (String line : lines) {

                System.out.println(line);

            }

            System.out.println(file.getName() + "******");

        }

    } catch (IOException e) {

        e.printStackTrace();

    }

}


查看完整回答
反對 回復(fù) 2021-09-26
  • 3 回答
  • 0 關(guān)注
  • 261 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號