将打开文件的路径传递给批处理文件[重复]

Posted

技术标签:

【中文标题】将打开文件的路径传递给批处理文件[重复]【英文标题】:Pass the path of an opened file to a batch file [duplicate] 【发布时间】:2022-01-20 23:34:52 【问题描述】:

如果我将批处理文件链接为某个文件扩展名的文件关联,那么我可以使用它将参数传递给 Java 程序的主函数。如何获取打开文件的路径作为参数,然后在 Java 中使用它?我想让直接打开我的 Java 程序创建和使用的文件成为可能。

MyFile.extension > 打开方式 > MyBatch.bat

MyBat.bat

java -jar test.jar thisIsWhereThePathBelongs

test.jar 主函数

public static void main(String[] args) 
    System.out.println(args[0]); // thisIsWhereThePathBelongs

提前致谢。

【问题讨论】:

这或多或少有效,我可以将参数获取到主函数输出,但是如何将打开文件的路径存储为参数? java -jar test.jar thePath --> thePath 当我打印我的 args 数组的第一个索引时。 【参考方案1】:

为了让您的批处理(或 .cmd)文件在通过 Open with ... 调用或作为文件扩展名关联时接收到的参数传递,您需要确保将参数 %1 传递给 Java:

MyBat.bat

@echo off
java -jar your.jar your.className %1

【讨论】:

以上是关于将打开文件的路径传递给批处理文件[重复]的主要内容,如果未能解决你的问题,请参考以下文章

将传递的参数重定向到 Windows 批处理文件 [重复]

如何将双引号中的路径传递给sql文件

如何通过用户界面中的插槽处理文件路径?

文件处理

批处理文件将xml文件内容传递给sqlplus

从包含 pdf 路径的列表文件中打开 pdf [重复]