java中如何从文件对象读取文本文件

java中如何从文件对象读取文本文件,java,file,Java,File,我有一个从类路径加载文件的代码 a=它的文本文件,我想把它读成字符串 我使用的是: File file = new File(classLoader.getResource("sample.json").getFile()); 我不想使用: file.getAbsolutePath(); 如何将此文本文件读入字符串 更新 我找到了解决办法,你觉得呢 ClassLoader classLoader = getClass().getClassLoader(); is = classLoade

我有一个从类路径加载文件的代码 a=它的文本文件,我想把它读成字符串 我使用的是:

 File file = new File(classLoader.getResource("sample.json").getFile());
我不想使用:

file.getAbsolutePath();
如何将此文本文件读入字符串

更新 我找到了解决办法,你觉得呢

 ClassLoader classLoader = getClass().getClassLoader();
is = classLoader.getResourceAsStream("sample.json");
String txt = IOUtils.toString(is);

如果您使用的是Java 8,您可以使用它从文件中读取行:

List<String> lines = Files.readallLines(file.toPath());


希望这有帮助

您可以使用以下代码读取文件对象

public static void main(String[] args) {

        try (BufferedReader br = new BufferedReader(file)) {
            String sCurrentLine;
            while ((sCurrentLine = br.readLine()) != null) {
                System.out.println(sCurrentLine);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

与file.getAbsolutePath()有什么关联如何处理您的问题?请参阅
Files.readAllLines()加载文件的可能副本..解析JSON…在for循环中,您可以将其转换为字符串。。。
public static void main(String[] args) {

        try (BufferedReader br = new BufferedReader(file)) {
            String sCurrentLine;
            while ((sCurrentLine = br.readLine()) != null) {
                System.out.println(sCurrentLine);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }