Java 打开本地文件的几种方式

举报
福州司马懿 发表于 2021/11/19 02:57:04 2021/11/19
【摘要】 import java.awt.Desktop; import java.io.File; import java.io.IOException; import java.util.ArrayList; ...
import java.awt.Desktop;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;

public class OpenLocalFile {

    public static void main(String[] args) {
        String PATH_TXT = "C:/Users/chenjia2014/Desktop/poi心得.txt";
        String PATH_NODEPAD = "C:/Windows/System32/notepad.exe";
        String NODEPAD = "nodepad.exe";

        try {
            new ProcessBuilder(NODEPAD, PATH_TXT).start();
        } catch (IOException e) {
            e.printStackTrace();
        }

        ArrayList<String> commands = new ArrayList<String>();
        //不能只用程序名, ERROR:Cannot run program "nodepad.exe": CreateProcess error=2, 系统找不到指定的文件。
        commands.add(PATH_NODEPAD);
        commands.add(PATH_TXT);
        try {
            new ProcessBuilder(commands).start();
        } catch (IOException e) {
            e.printStackTrace();
        }

        try {
            //使用文件的默认打开方式打开
            Desktop.getDesktop().open(new File(PATH_TXT));
        } catch (IOException e) {
            e.printStackTrace();
        }

        try {
            //cmd /c就是当执行完相应的命令(在命令提示符中)后自动退出命令提示符
            //也是使用文件的默认打开方式打开
            Runtime.getRuntime().exec("cmd /c " + PATH_TXT);
        } catch (IOException e) {
            e.printStackTrace();
        }
        try {
            //不能只用程序名, ERROR:Cannot run program "nodepad.exe": CreateProcess error=2, 系统找不到指定的文件。
            Runtime.getRuntime().exec(PATH_NODEPAD + " " + PATH_TXT);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  
 

文章来源: blog.csdn.net,作者:福州-司马懿,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/chy555chy/article/details/52741352

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。