我有以下蚂蚁任务:
<target name="test">
<replace file="test.txt" token="smth" value="anything"/>
</target>
test.txt是UTF-8编码的。问题是当我运行这个任务时
它破坏了一些UTF-8符号(只有少数符号,而不是全部符号)
我试过使用ant -Dfile.encoding=UTF-8 -buildfile=build.xml
,
并指定build.xml编码<?xml version="1.0" encoding="UTF-8">
,
但问题仍然存在。
如何使用UTF编码的文件使我的Ant任务正常工作?
答案 0 :(得分:8)
来自docs for the replace task,在属性列表中:
属性:编码
描述:替换操作的文件的编码 默认值:否 - 默认为默认JVM编码
所以它使用平台默认编码。如果您希望它使用UTF-8,只需将您的呼叫更改为:
<replace file="test.txt" token="smth" value="anything"
encoding="UTF-8" />