linux 添加引号,java - Java绝对路径在添加引号时添加user.home属性-Linux - 堆栈内存溢出...

如果我尝试使用Linux中包含空格的路径,显然会得到FileNotFoundException。 但是,如果我尝试在路径中添加双引号/单引号作为解决方法,则会出现相同的异常。

我试图检查原因,发现使用引号时生成的绝对路径变为: user.home系统属性+指定的路径。

例如:

如果我使用此路径:

/home/db2inst1/Desktop/testing - Development Environmet/64_dev/testing/logs

这是我尝试使用引号时得到的绝对路径:

/home/db2inst1/"/home/db2inst1/Desktop/testing - Development Environmet/64_dev/testing/logs"

我还尝试用“ \\”代替空格,而不是添加引号,但是它不起作用。

我尝试了很多API,并且每次都发生这种情况,因此编写此代码只是为了进行测试:

System.out.println("- regular path: ");

System.out.println(new File(path).getPath());

System.out.println(new File(path).getAbsolutePath());

System.out.println("- quoted path: ");

System.out.println(new File(quotedPath).getPath());

System.out.println(new File(quotedPath).getAbsolutePath());

这是输出:

- regular path:

/home/db2inst1/Desktop/testing - Development Environmet/64_dev/testing/logs/testing.log

/home/db2inst1/Desktop/testing - Development Environmet/64_dev/testing/logs/testing.log

- absolute path:

"/home/db2inst1/Desktop/testing - Development Environmet/64_dev/testing/logs/testing.log"

/home/db2inst1/"/home/db2inst1/Desktop/testing - Development Environmet/64_dev/testing/logs/testing.log"

有谁知道为什么发生这种情况以及如何使其起作用?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值