2013-05-06 253 views
0

我必須使用exe來運行某個功能。但是該目錄包含特定文件夾的某些文件夾,如「。」,「 - 」,所以它沒有被執行。我可以重命名目錄名稱,就像我們爲文件名所做的那樣,我不知道需要做什麼。目錄名稱包含特殊字符

我正在使用Linux環境。 下面是一段代碼,

   newFilename = /sites/jboss-5.1.0.GA/server/dev/deploy/meen.war/temp/filename 

       String[] command_ary = { directory+"lib/fcrc", newFilename }; 

       process = runtime.exec(command_ary); 
       int exit_val = process.waitFor(); 

FCRC是我的exe文件,其隨後的文件名,這裏的目錄包含特殊字符,所以它創造的問題。而來自其他目錄林能夠執行,但我需要從這個目錄只能訪問

和exit_val返回1

任何人都可以給我建議? 謝謝你

+1

您是否在從命令行或代碼引用文件夾時遇到問題?如果來自命令行,這不是正確的論壇(請嘗試http://superuser.com/)。如果來自代碼,請告訴我們您的代碼。此外,讓我們知道您使用的是什麼環境(操作系統,shell版本(如果適用)等)。 – 2013-05-06 12:30:55

+1

你能告訴我們一些代碼嗎? – 2013-05-06 12:35:21

+1

目前很難理解(1)*爲什麼*特殊字符是一個問題,(2)你想要做什麼,(3)你如何去做,(4)你嘗試過什麼,(5)這與Java有什麼關係(給定Java標籤)。請嘗試澄清。 – Dukeling 2013-05-06 12:35:31

回答

0

正如評論所說,如果沒有看到你的代碼就很難理解這個問題。如果問題是您的fcrc可執行文件無法處理路徑名,那麼我建議您臨時複製或移動該文件;或者您創建一個指向該文件的鏈接並將該鏈接傳遞給您的可執行文件。

0

你有沒有試過逃脫這些字符的逃生標誌?

例如在Windows上,如果你想在名稱空間訪問文件夾,你應該逃避它:

C:\Program/ Files\something\file.txt 

這將在「程序文件」,「東西」文件夾內file.txt的到達。

如果您的情況如此,或者您使用帶有「。」的文件夾。跡象試圖以類似的方式逃離路徑中的特殊字符。