java1.8用原生方法读取resource目录下的json
时间: 2024-02-23 14:01:23 浏览: 35
在Java 1.8中,你可以使用以下代码来读取resource目录下的JSON文件:
```java
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import org.apache.commons.io.IOUtils;
public class JsonReader {
public static void main(String[] args) {
String fileName = "example.json";
InputStream inputStream = JsonReader.class.getResourceAsStream("/" + fileName);
try {
String json = IOUtils.toString(inputStream, StandardCharsets.UTF_8);
System.out.println(json);
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
这个例子中,我们首先定义了一个文件名`example.json`,该文件应该位于`src/main/resources`目录下。然后我们使用`getResourceAsStream`方法从resource目录中获取文件的InputStream。接下来,我们使用Apache Commons IO库的`IOUtils.toString`方法将InputStream转换为UTF-8编码的字符串。最后,我们将字符串打印到控制台上。
需要注意的是,`getResourceAsStream`方法的参数应该是以`/`开头的文件路径,这表示在classpath根目录下查找文件。如果你的文件在`src/main/resources/data`目录下,你应该使用`/data/example.json`来获取文件的InputStream。
另外,需要导入Apache Commons IO库的依赖:
```xml
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.8.0</version>
</dependency>
```
相关推荐
![pas](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)