java的Runtime類處理打開有空格的文件

最近在做文件管理的項目,在開發過程中遇到了一個問題。調用Runtime類的方法,去打開指定路徑下的文件時,當文件名不含有空格,可以正常打開文件;而當文件名含有空格時,打開文件失敗。例如:

1.String absolutePath = "E:\\test\\測試文件.docx";
2.String absolutePath = "E:\\test\\測試  文件.docx";

Runtime.getRuntime().exec("cmd /c start " + absolutePath);

其中,1 是能正常打開的,而 2 含有空格,打開失敗。經查閱發現,在調用批處理命令打開文件名含有空格的文件時,需要在空格的前後加上“ ”。

解決辦法:

Runtime.getRuntime().exec("cmd /c start " + absolutePath.replace(" ", "\" \""));
這樣就可以正常打開文件名中含有空格的文件了~
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章