我想在Ant中这样做:
<echo message="[44;1;37mSuccess![m" />
Run Code Online (Sandbox Code Playgroud)
但它不起作用:
BUILD FAILED
./build.xml:92: Character reference "&#
Run Code Online (Sandbox Code Playgroud)
怎么做?
XML内容中的0x1B字符无效(XML中的无效字符).所以你需要一些解决方法.我会使用javascript解决方法,但我还提供了2个额外的解决方案:
<script language="javascript">
project.setNewProperty("esc", "\u001b");
</script>
<echo>${esc}</echo>
Run Code Online (Sandbox Code Playgroud)
如果你想在文件中输出,那么你可以先用java转义输出它\u001b,然后使用反向Native2Ascii例程转换它.无论选择哪种编码,它总是解码\u序列.
<echo file="a.enc">\u001b</echo>
<native2ascii includes="a.enc" ext=".txt" dest="${basedir}"
encoding="iso-8859-1" reverse="true" />
Run Code Online (Sandbox Code Playgroud)
最后,您可能会在文件中将不幸的字符串设为常量:
<property file="prop.txt" />
<echo>myEsc:${myEsc}</echo>
Run Code Online (Sandbox Code Playgroud)
而prop.txt内容是:
myEsc=\u001b
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2922 次 |
| 最近记录: |