Encoding 如何在Ant中将属性值从UTF8转换为ascii

Encoding 如何在Ant中将属性值从UTF8转换为ascii,encoding,ant,Encoding,Ant,假设我有一处房产 ${test}=íñü 在Ant中,是否有方法将此属性值转换为\uxxx 我知道Ant可以使用native2ascii转换文件 财产价值如何 更新:我问这个问题的原因是因为我想在ant中运行一个bat文件,bat文件的路径包含一些非Ascii字符: ${test}=íñü <target name="help"> <exec executable="cmd"> <arg value="/c"/> &l

假设我有一处房产

${test}=íñü
在Ant中,是否有方法将此属性值转换为\uxxx

我知道Ant可以使用native2ascii转换文件

财产价值如何

更新:我问这个问题的原因是因为我想在ant中运行一个bat文件,bat文件的路径包含一些非Ascii字符:

${test}=íñü
<target name="help">
    <exec executable="cmd">
        <arg value="/c"/>
        <arg value="${test}.bat"/>
        <arg value="-p"/>
    </exec>
</target>
${test}=íñü
错误是系统找不到路径。我认为这与路径的编码方式有关。但是,从UTF8到ASCII的转义路径无助于解决此问题

请使用

此示例从
test
设置属性
test2

<property name="test" value="íñü" />
<loadresource property="test2">
  <string value="${test}" />
  <filterchain>
    <escapeunicode/>
  </filterchain>
</loadresource>
<echo encoding="utf8" message="'${test}' maps to '${test2}'" />

loadresource
任务需要Ant 1.7或更高版本。

太好了。谢谢。它起作用了。我问这个问题的原因是因为我有另一个问题。但这似乎最终并不能帮助我解决另一个问题。请看我更新的帖子,我现在手头没有一台windows机器可以实验。你能从一个简单的.bat文件中得到同样的结果吗?可能是Java文件.encoding与操作系统的不匹配-可能是windows希望使用CP-1252?您的意思是从cmd运行.bat吗?它可以工作,但是cmd无法显示文件名,我的意思是从另一个批处理文件运行íñü.bat,该批处理文件使用utf-8编码。但听起来它可能很管用。。。就像我说的,我没有操作系统来调查这件事。
[echo] 'íñü' maps to '\u00ed\u00f1\u00fc'