JAVA读取绝对路径文件和项目类路径下的文件的方法

简介: JAVA读取绝对路径文件和项目类路径下的文件的方法

开发过程中经常遇到读取文件的操作,主要是要JAVA原生或者框架工具包里的方法,下面介绍四种方法,两种读取绝对路径,两种读取类路径下的文件的方法:

//1、JAVA原生读取绝对路径InputStreaminput=newFileInputStream("C:\\code\\study\\Springboot26Demo\\src\\main\\resources\\graphql\\test.gqls");
intlen=input.available();
byte[] bytes=newbyte[len];
input.read(bytes);
input.close();
Stringcontent=newString(bytes,"UTF-8");
System.out.println(content);
//2、JAVA原生读取Classpath路径 graphql/test.gqls存放在src\\main\\resources目录下ClassLoaderloader=FileReadMain.class.getClassLoader();
InputStreaminput=loader.getResourceAsStream("graphql/test.gqls");
intlen=input.available();
byte[] bytes=newbyte[len];
input.read(bytes);
input.close();
Stringcontent=newString(bytes,"UTF-8");
System.out.println(content);
//3、Spring工具读取绝对路径Resourceresource=newFileSystemResource("C:\\code\\study\\Springboot26Demo\\src\\main\\resources\\graphql\\test.gqls");
InputStreaminput=resource.getInputStream();
intlen=input.available();
byte[] bytes=newbyte[len];
input.read(bytes);
input.close();
Stringcontent=newString(bytes,"UTF-8");
System.out.println(content);
//4、Spring工具读取Classpath路径 graphql/test.gqls存放在src\\main\\resources目录下Resourceresource=newClassPathResource("graphql/test.gqls");
InputStreaminput=resource.getInputStream();
intlen=input.available();
byte[] bytes=newbyte[len];
input.read(bytes);
input.close();
Stringcontent=newString(bytes,"UTF-8");
System.out.println(content);

如果使用Spring框架那么Spring-core的io包下封装了很多与文件,路径等资源有关的类,可以优先考虑使用。

目录
相关文章
|
2天前
|
Java
java的类详解
在 Java 中,类是面向对象编程的核心概念,用于定义具有相似特性和行为的对象模板。以下是类的关键特性:唯一且遵循命名规则的类名;描述对象状态的私有属性;描述对象行为的方法,包括实例方法和静态方法;用于初始化对象的构造方法;通过封装保护内部属性;通过继承扩展其他类的功能;以及通过多态增强代码灵活性。下面是一个简单的 `Person` 类示例,展示了属性、构造方法、getter 和 setter 方法及行为方法的使用。
|
6天前
|
Java API 开发者
【Java字节码操控新篇章】JDK 22类文件API预览:解锁Java底层的无限可能!
【9月更文挑战第6天】JDK 22的类文件API为Java开发者们打开了一扇通往Java底层世界的大门。通过这个API,我们可以更加深入地理解Java程序的工作原理,实现更加灵活和强大的功能。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来!
|
4天前
|
Java
Java 对象和类
在Java中,**类**(Class)和**对象**(Object)是面向对象编程的基础。类是创建对象的模板,定义了属性和方法;对象是类的实例,通过`new`关键字创建,具有类定义的属性和行为。例如,`Animal`类定义了`name`和`age`属性及`eat()`、`sleep()`方法;通过`new Animal()`创建的`myAnimal`对象即可调用这些方法。面向对象编程通过类和对象模拟现实世界的实体及其关系,实现问题的结构化解决。
|
4天前
|
Java API 开发者
【Java字节码的掌控者】JDK 22类文件API:解锁Java深层次的奥秘,赋能开发者无限可能!
【9月更文挑战第8天】JDK 22类文件API的引入,为Java开发者们打开了一扇通往Java字节码操控新世界的大门。通过这个API,我们可以更加深入地理解Java程序的底层行为,实现更加高效、可靠和创新的Java应用。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来,并积极探索类文件API带来的无限可能!
|
2天前
|
Java 程序员
Java编程中的对象和类: 初学者指南
【9月更文挑战第9天】在Java的世界中,对象和类构成了编程的基石。本文将引导你理解这两个概念的本质,并展示如何通过它们来构建你的程序。我们将一起探索类的定义,对象的创建,以及它们如何互动。准备好了吗?让我们开始这段Java的旅程吧!
|
20天前
|
Java 应用服务中间件 Windows
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
|
弹性计算 数据可视化 关系型数据库
阿里云服务器部署Java Web项目和连接MySQL数据库全流程
阿里云服务器部署Java Web项目和连接MySQL数据库全流程
5543 0
阿里云服务器部署Java Web项目和连接MySQL数据库全流程
|
18天前
|
Java 开发工具 git
【Azure 应用服务】本地Git部署Java项目到App Server,访问无效的原因
【Azure 应用服务】本地Git部署Java项目到App Server,访问无效的原因
|
19天前
|
JavaScript Java Python
【Azure 应用服务】在Azure App Service for Windows 中部署Java/NodeJS/Python项目时,web.config的配置模板内容
【Azure 应用服务】在Azure App Service for Windows 中部署Java/NodeJS/Python项目时,web.config的配置模板内容
|
4月前
|
存储 Java Maven
使用 nohup 部署和后台运行Java 项目
使用 nohup 部署和后台运行Java 项目
348 1
使用 nohup 部署和后台运行Java 项目