我有一个调用 PHP 脚本的 Android 应用程序,它返回 0 (FALSE) 或 1 (TRUE) - 不幸的是作为一个字符串。所以在我的 Java 代码中,我的变量String result
是“0”或“1”。我知道(在此感谢你们)这个字符串可以以 BOM 开头,所以我删除它,如果是的话。
这不是真的有必要,但是假设我将结果作为整数而不是字符串,我会感觉更好。从 string 到 int named 的转换code
似乎有效。至少我没有看到任何事情发生。
但是,当我想使用转换后的 int likeif (code == 1)
或通过 Toast 显示它时,我的应用程序崩溃了。我可以用Toast
那个result == "1"
和那个来展示,result.length() == 1
所以我看不出我怎么可能无法将此字符串转换为 int:
String result = postData("some stuff I send to PHP");
if (result.codePointAt(0) == 65279) // which is the BOM
{result = result.substring(1, result.length());}
int code = Integer.parseInt(result); // <- does not crash here...
// but here...
Toast.makeText(ListView_Confirmation.this, code, Toast.LENGTH_LONG).show();
我也尝试使用valueOf()
和添加.toString()
,但它一直在崩溃。我在这里想念什么?