好的,我遇到了一个无法解决的问题。我正和朋友一起开发应用程序。
问题是,使用此代码,应用程序会为我运行,但是当我的朋友运行它时,他会收到错误(IllegalArgumentException
),就像他仍然有一些标记字符一样。
idical = Html.toHtml(icalarr.get(info.position));
int l = idical.length() - 5;
idical = idical.substring(3, l);
所以他把代码更改为:
idical = idical.substring(11, l);
现在我收到的错误就像我“剪掉”太多字符一样。它没有意义,因为代码是相同的,我们使用相同的IDE和设备
答案 0 :(得分:1)
您是否调查过您的字符集编码是否与朋友不同?在Eclipse中,可以通过右键单击项目并选择“属性”来找到它。在打开的页面(“资源”页面)上,有编码和文件行分隔符的选项。如果您没有相同的文件,那么即使您看到的文字看起来相同,每个系统也会以不同的方式解释文件。
另一种选择是将原始文本加载到Notepad ++等程序中并检查字符集。您还可以在那里查找可能导致问题的“隐形”字符。
答案 1 :(得分:1)
看起来你从日历中提取年份(返回int
)然后转换为html,然后从html中提取结果的数字部分。
虽然您的构建中显然存在一些差异,但如果您根本不将日历内容转换为html,那么它似乎会更容易,例如:
idical = icalarr.get(info.position).toString();