gpt4 book ai didi

java - 如何从包中读取文件 - 类似于 Java 中的资源包

转载 作者:行者123 更新时间:2023-12-01 19:22:57 27 4
gpt4 key购买 nike

我有一个words.txt 文件,我已将其放入特定的java 包中,并且需要从同一位置读取它。我不控制部署,所以我不知道包将部署在哪里。

示例位置:com/example/files/words.txt。

我知道如何使用 ResourceBundle 类从包层次结构而不是相对/绝对路径读取属性文件。像ResourceBundle.getBundle(com.example.files.words) 对于一般文件是否有类似的东西,以便我可以从包层次结构而不是某些绝对/相对路径中读取它?

最佳答案

您可以使用 getResourceAsStream() 方法(在类 Class 中定义)从类路径中检索资源。如果类 WordReader 位于包 com.example 中,则资源文件的路径应为 files/words.txt

package com.example;

public class WordReader {

public void readWords() {
InputStream is = getClass().getResourceAsStream("files/words.txt");
StringBuilder sb = new StringBuilder();
for(Scanner sc = new Scanner(is); sc.hasNext(); )
sb.append(sc.nextLine()).append('\n');

String content = sb.toString();
}
}

关于java - 如何从包中读取文件 - 类似于 Java 中的资源包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3036836/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com