编写Java程序,模拟文件操作过程中的异常处理

简介: 编写Java程序,模拟文件操作过程中的异常处理

需求说明:


  1. 从控制中输入计算机磁盘中后缀名为“.txt”的文件的完整物理路径。
  2. 如果该文件存在,则在控制台输出友好提示信息,告知用户该文件存在,如果文件不存在,程序运行时会抛出异常,将异常进行捕获。
  3. 无论程序是否出现异常,最终通过finally语句库释放输入流所占用的物理资源。


71.png

72.png



实现思路:

创建类Read,在该类中导入java.io.FileInputStream类,在Read类中定义静态方法readFile(),该方法有一个String类型的参数,该参数表示从控制台读取到的用户输入的文件全路径。


在readFile()方法中定义FileInputStream类型变量fis,该变量封装所读入的文件路径。在try语句中创建FileInputStream实例,如果所读入的文件路径存在,则在控制台输出友好的提示信息,告知用户该文件存在。


实现代码:

import java.io.FileInputStream;
import java.io.IOException;
import java.util.Scanner;
public class File {
  public static void main(String[] args) {
    System.out.println("请输入文件路径:");
    String filePath = new Scanner(System.in).next();
    FileInputStream fis=null;
    try{
      fis = new FileInputStream(filePath);
      System.out.println("恭喜您!"+filePath+"文件存在");
    }catch (IOException e) {
      System.err.println(e.getMessage());
    }finally{
      if(fis!=null){
          try {
            fis.close();
          } catch (IOException e) {
           e.printStackTrace();
          }
         }
    }
  }
}
相关文章
|
1月前
|
安全 Java 编译器
驾驭Java异常处理:从新手到专家的优雅之道
驾驭Java异常处理:从新手到专家的优雅之道
203 59
|
1月前
|
安全 Java
Java异常处理:程序世界的“交通规则
Java异常处理:程序世界的“交通规则
298 98
|
2月前
|
存储 Java 编译器
对比Java学习Go——程序结构与变量
本节对比了Java与Go语言的基础结构,包括“Hello, World!”程序、代码组织方式、入口函数定义、基本数据类型及变量声明方式。Java强调严格的面向对象结构,所有代码需置于类中,入口方法需严格符合`public static void main(String[] args)`格式;而Go语言结构更简洁,使用包和函数组织代码,入口函数为`func main()`。两种语言在变量声明、常量定义、类型系统等方面也存在显著差异,体现了各自的设计哲学。
|
3月前
|
人工智能 监控 安全
智慧工地解决方案,java智慧工地程序代码
智慧工地系统融合物联网、AI、大数据等技术,实现对施工现场“人、机、料、法、环”的全面智能监控与管理,提升安全、效率与决策水平。
120 2
|
3月前
|
Java 数据库 C++
Java异常处理机制:try-catch、throws与自定义异常
本文深入解析Java异常处理机制,涵盖异常分类、try-catch-finally使用、throw与throws区别、自定义异常及最佳实践,助你写出更健壮、清晰的代码,提升Java编程能力。
|
4月前
|
Java 编译器 数据库连接
Java异常处理:写出更健壮的代码
Java异常处理:写出更健壮的代码
190 0
|
6月前
|
Java
java 多线程异常处理
本文介绍了Java中ThreadGroup的异常处理机制,重点讲解UncaughtExceptionHandler的使用。通过示例代码展示了当线程的run()方法抛出未捕获异常时,JVM如何依次查找并调用线程的异常处理器、线程组的uncaughtException方法或默认异常处理器。文章还提供了具体代码和输出结果,帮助理解不同处理器的优先级与执行逻辑。
157 1
|
8月前
|
存储 Java 数据库连接
【YashanDB知识库】Java程序调用存储过程,在提取clob时报YAS-00004
【YashanDB知识库】Java程序调用存储过程,在提取clob时报YAS-00004
|
1月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
121 1