有时需要在java程序中打开一个文件。java.awt.Desktop可用于在java中打开文件。Desktop实现依赖于平台,因此首先,应该检查操作系统是否支持Desktop类。此类查找注册到当前平台的关联应用程序以打开文件。

我们来看看一个使用java程序打开文件程序的示例。如果打开一个不存在的文件,它将抛出java.lang.IllegalArgumentException异常。

在java程序中打开文件的Desktop类示例。

import java.awt.Desktop;

import java.io.File;

import java.io.IOException;

public class JavaOpenFile {

public static void main(String[] args) throws IOException {

// 文本文件,应该在默认文本编辑器中打开

File file = new File("D:/users/maxsu/source.txt");

// 首先检查平台是否支持Desktop

if(!Desktop.isDesktopSupported()){

System.out.println("Desktop is not supported");

return;

}

Desktop desktop = Desktop.getDesktop();

if(file.exists()) desktop.open(file);

// 尝试打开PDF文件

file = new File("D:/users/maxsu/java.pdf");

if(file.exists()) desktop.open(file);

}

}

运行上述程序时,将在默认文本编辑器中打开文本文件。同样,将在adobe acrobat reader中打开PDF文件。

如果没有与给定文件类型关联的应用程序或应用程序无法启动,则open()方法将抛出java.io.IOException异常。

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

java中打开文件怎么实现_Java如何在程序中打开文件?相关推荐

  1. 对文件或文件夹进行删除、移动、windows10重命名等操作时,系统可能提示“操作无法完成,因为其中的文件夹已在另一程序中打开,请关闭该文件或文件夹,然后重试

    我们在windows10中对文件或文件夹进行删除.移动.重命名等操作时,系统可能提示"操作无法完成,因为其中的文件夹已在另一程序中打开,请关闭该文件或文件夹,然后重试.",遇到这种 ...

  2. 无法删除文件夹的情况:文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开...

    在删除文件夹的时候,可能会遇到文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开,请关闭该文件夹或或文件,然后重试.这类无法关闭删除文件夹的情况,如下图所示. 如何解决 解决这 ...

  3. DevOps进阶(十)Jenkins组包时解决无法删除文件夹的情况:文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开...

    在删除文件夹的时候,可能会遇到文件夹正在使用,操作无法完成,因为其中的文件,或文件夹已在另一个程序中打开,请关闭该文件夹或或文件,然后重试.这类无法关闭删除文件夹的情况,如下图所示. 解决这个的关键是 ...

  4. 电脑删除文件遇到“操作无法完成,因为其中的文件夹或文件已在另一应用程序中打开”怎么办

    原文连接:http://www.xitongcheng.com/jiaocheng/dnrj_article_55055.html 电脑删除无用文件能增加内存使用空间,这不一位小伙伴说自己电脑删除某文 ...

  5. Doxygen 一个程序的文件产生工具,可将程序中的特定批注转换成为说明文件

    Doxygen是一种开源跨平台的,以类似JavaDoc风格描述的文档系统,完全支持C.C++.Java.Objective-C和IDL语言,部分支持PHP.C#.注释的语法与Qt-Doc.KDoc和J ...

  6. LoadRunner 是要保存此文件,还是要联机查找程序来打开此文件

    软件 1.LoadRunner:LoadRunner12.0.2 LoadRunner12.55(两个版本我都用过,都会出现这种情况) 2.浏览器:IE11 火狐29(两个浏览器都试过,记得要用Loa ...

  7. java中属性文件读取案例_java相关:Spring中属性文件properties的读取与使用详解

    java相关:Spring中属性文件properties的读取与使用详解 发布于 2020-6-3| 复制链接 摘记: Spring中属性文件properties的读取与使用详解实际项目中,通常将一些 ...

  8. java的类型默认存储类型_java 问题:保存对话框的默认文件类型?

    import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.filechooser.*; ...

  9. java如何使显示字符下标_Java如何在 Word 中设置上、下标

    上标是指比同一行中其他文字稍高的文字,而下标是指比同一行中其他文字稍低的文字.在生活中,我们常见的平方米.立方米等符号以及化学中的各种元素符号,都是利用上.下标来表示的.本文将介绍通过Free Spi ...

最新文章

  1. flashcom中远程共享对象SharedObject的用法
  2. php接收flutter,来自Flutter中的PHP的API流(非Firebase)
  3. DirectSound学习笔记(3):协作级别
  4. TPL Dataflow .Net 数据流组件,了解一下?
  5. shell两个时间字符串插值_Shell 脚本速成
  6. 探索新型化学反应的AI机器人诞生!有望加速药物发现 | Nature论文
  7. 测试总结(部分)---转载
  8. Docker系列(六)镜像与仓库
  9. TCP协议详解 (史上最全)
  10. 暗影精灵4风扇转速调节_惠普暗影精灵2怎么调节风扇?
  11. 基于Androidstudio餐厅点餐选座系统
  12. 2022.3月份工作记录【日记】
  13. Java基础:File类与IO流
  14. python如何安装库(详细教程,解决弯路)
  15. 老马群控使用教程之手机设备怎么开启【开发者选项】
  16. android 格式工厂,格式工厂app下载-格式工厂app安卓版下载[辅助工具]-华军软件园...
  17. 现实世界充满了bug_现实世界充满了哪些bug
  18. c语言 随机函数详解
  19. typescript:never与keyof的妙用
  20. 修复Cydia没网 和 Host Unreachable错误

热门文章

  1. java 三次贝塞尔曲线算法_转:穿过已知点画平滑曲线(3次贝塞尔曲线)
  2. 超强且极具内涵的电影经典台词
  3. word创建空白页,不影响后续格式
  4. Unity中的AI算法和实现2-有限状态机FSM(上)
  5. 全国大学生信息安全竞赛writeup--拯救地球(reverse500)
  6. html页面滑动不流畅,解决页面使用overflow:scroll在移动端iOS系统上滑动出现卡顿的问题...
  7. C++中的_access函数(判断文件是否存在)
  8. 努比亚手机浏览器 安全证书失效_「前沿」小米10安卓11尝鲜版来了 | 倪飞出任中兴手机总经理...
  9. 【Android 逆向】x86 汇编 ( add / sub / mul / div 数值运算指令 | xor / not / sal / sar / shl / shr 位运算指令 )
  10. Python基础-配置文本编辑器