2011-09-29 76 views
0

我有一個build.xml文件,它指定一個日文字符作爲命令參數的目錄。在windows的build.xml中爲ant指定日文字符的目錄

<exec executable="${amxmlc_cmd}"> 
     <arg line="${amxmlc_opt}" /> 
     ... 
     <arg line="-source-path+=Work/システム/_config_as" /> 
     ... 
</exec> 

<condition property="amxmlc_cmd" value="cmd.exe"> 
     <os family="windows" /> 
</condition> 
<condition property="amxmlc_opt" value='/c "${flex_sdk}bin/amxmlc"'> 
     <os family="windows" /> 
</condition> 

我得到的錯誤 「錯誤:無法打開「工作/ ????/_ config_as」

我改

<condition property="amxmlc_opt" value='/u/c "${flex_sdk}bin/amxmlc"'> 
      <os family="windows" /> 
</condition> 

但我犯了同樣的錯誤。

當我改變窗口非Unicode程序的默認日本給我的錯誤「錯誤:無法打開‘工作/システム/ _config_as’」

任何幫助是極大的讚賞。 感謝您的提前。

+2

在我看來,你沒有問題與螞蟻和日本的名字,但有一個問題,不能打開指定的文件的命令。 –

+0

我不明白,你爲什麼*永遠*有一個用於日語編程的文件夾?使用locale屬性文件保留基於語言環境的東西,而不是文件夾結構...... –

回答

0

這是螞蟻,誰沒有正確傳遞的Unicode參數。 只有將系統區域設置爲日語並重新啓動時,它纔會起作用。 http://mihai-nita.net/2005/06/11/setting-the-user-and-system-locales/

===

更正:做了一些測試,這是不是螞蟻的錯,這是Java本身。 我已經嘗試了Runtime.exec和ProcessBuilder.start,並且在將它們傳遞給子應用程序之前,它們都將參數轉換爲ANSI。 (孩子的應用程序是C,Unicode,並從C父母,Unicode調用,工作正常)

2011年(Java版本1.6.0_26-B03,這將是有趣的嘗試7)