当前位置: 首页 > 面试题库 >

Windows上的Ant编码问题-UTF-8文件,但在变音符号上吐了垃圾

东方震博
2023-03-14
问题内容

不知何故,我无法让UTF-8源代码与Ant一起玩得很好。

我收到很多“警告:编码ascii的不可映射字符”。我真的要疯了。数小时,数小时,数小时。顺便说一句,我注意到已经有5个人使用了该标签。:-)

是的,我已经阅读了this,this和其他内容。Google也(至少5个或4个不同搜索的前5个页面结果)。有javac选项。我试过了。还有一些预设或其他东西(对不起,凌晨3点)。也没用。

我正在用Ant生成Android
apk文件。我不能使用Eclipse,所以不可以。顺便说一句,蚂蚁文档对我来说是胡说八道。这些例子根本没有用。我已经不知道自己尝试了多少。

我尝试使用Dfile.encoding选项,并尝试将其与CHCP 65001
Windows命令混合使用。完成所有组合,甚至使Ant(我想是Javac)停止吐出错误,但这仍然没有关系。我的代码仍然以垃圾搬运工结尾(用一堆??代替á,í等)。


问题答案:

对于所有在Windows上使用UTF-8源文件并试图使用Proguard借助Dan Galpin / Tim
Bray着名的博客文章
构建Android软件包的所有人。

javac会发生这种编码问题( 感谢技巧JesperE
)。但是,由于所需的参数我一无所知,因此无法在项目的文件上创建新的javac规则。因此,这是简单的答案(可能不是唯一的答案):

  1. 尝试通常的“ ant release”命令。
  2. 请注意,一开始,有一个输出在谈论一些导入的ANT规则。一开始,您将看到一些[设置]规则。寻找这个:

[设置]导入规则文件:tools \ ant \ ant_rules_r3.xml

  1. 找到该文件并打开它。搜索“ javac编码”。您将看到将其设置为“ ascii”。更改为“ UTF-8”。

  2. 再次执行“蚂蚁释放”,一切都会好起来的。

这就是我在这里所做的。我确定有一种方法可以根据每个项目进行覆盖。但是,正如我所说的那样,它始终使我在强制参数上出现错误。所以
至少对我来说这样做容易得多 。此外,无论如何,我只使用UTF-8。



 类似资料:
  • 我的内页有问题。它只是将页面识别为iso,但我想要utf-8,我将其声明为默认字符集。我尝试对freemarker配置进行一些修改,但没有效果。 springservlet。xml template.html login.html 输出

  • 我想知道是否有人能帮忙,我很难将UTF-8字符发布到SagePay。数据库是MySQL,带有数据库字符集utf8和数据库排序规则utf8_general_ci。数据库连接字符串使用useUnicode=true 所有发布到数据库的数据都存储为UTF-8,所有查询的数据都显示为UTF-8,但当字符串编码如下时: 然后发到SagePay,他们会收到一个来自国际字符所在位置的乱码字符串。如果字符串中不包

  • 问题内容: 我目前正在从事一个项目,我不使用常规的MySQL查询,而是继续学习如何使用PDO。 我有一个称为参赛者的表,数据库,表和所有列均位于utf-8中。我的参赛者表中有10个条目,而它们的“名称”列中包含诸如åäö之类的字符。 现在,当我从数据库中获取一个条目并使用var_dump的名称时,我得到了一个很好的结果,即一个包含所有特殊字符的字符串。但是我需要做的是按字符分割字符串,将它们放入数

  • 我在将文本从UTF-8编码转换为UTF-8编码时遇到问题。这里有字节数组, 我正在将其转换为UTF-8字符串并返回字节数组, 据我所知,这是一个3字节的数组。正当但这是我得到的。 这是什么原因?据我所知,在UTF-8 Specials中,2391189组合被称为替换字符。 这也是一个更大问题的一部分。

  • 问题内容: 使用UTF-8编码创建字符串时存在不一致的地方。 运行此代码: 在Java 1.8.0_20(及更早版本)上,我们得到结果 在Java 1.7和1.6上,我们得到正确的结果: 您遇到此错误了吗?有没有解决方法? 对于Shift_JIS,JIS_X0212-1990,x-IBM300,x-IBM834,x-IBM942,x-IBM942C,x-JIS0208来说,这种不一致也很明显,但显

  • 所以我有一个基于gradle的java项目,有大量匈牙利文档字符串,这意味着很多非ASCII字符。 这是完全好的,因为javac在源代码中使用utf-8字符,而根据我的知识,javadoc也应该使用。 在构建中,gradle有一个创建java doc jar的任务 当我运行时,它会失败,出现以下错误: :compileJava C:\home\projects\inventorycore\src\