0

每当我想将"0"Java 中的字符串解析为0(int) 时,它都会引发 InvalidInt-Error。但是,
诸如等之类的字符串可以工作。"1""2"

更新:其他数字也不起作用。

我正在从我的网页中获取 PHP 文件的 HTML 源代码,而这个网页只显示一个数字。

代码:

String[] result = sourceCode.trim().split("<br>");
for (int i = 0; i < result.length; i++)
{
    result[i] = result[i].trim().replace("\n", "").replace("\r", "");
}

    if (Integer.parseInt(result[0]) > 0) 
    {
         //Do Something
    }

错误信息

4

1 回答 1

4

根据问题下方评论中提供的信息,事实证明您的字符串开头重复出现了Unicode 字符“零宽度无间隔”(U+FEFF) 。您可以执行以下操作来删除它:

final String ZERO_WIDTH_NO_BREAK_SPACE = "\uFEFF";
String good = result[0].replace(ZERO_WIDTH_NO_BREAK_SPACE, "");

此外,TAB所有这些角色之间都隐藏着一个。摆脱它

good = good.replaceAll("\\s+", "");
于 2013-08-20T23:54:27.823 回答