我在 Windows 7 机器上运行 Cygwin,并使用脚本文件批量执行 Java 程序。我的问题是:我尝试通过命令行将 Cygwin / Linux 路径传递给文件,Java 将所有正斜杠转换为反斜杠。
例如:
java program $scratchname/path_to_folder/ filename_$i.txt
在 Java 中,我获取目录并添加文件名以打开文件,只要我使用 Windows 命令行,这通常可以正常工作。但是,在 Cygwin Java 中将其转换为:
home\scratch\path_to_folder
Cygwin 不喜欢的。
我认为用正斜杠替换反斜杠并不是一件简单的事情,因为当我尝试打开文件时,Java 似乎默认为 Windows 路径约定。我猜这是因为 Cygwin 指向 JVM 的 Windows 安装。
如何强制 Java 在 Windows 系统上使用 Cygwin / Linux 路径名约定?