解析时的整数解析器错误" 0xFF000000"

时间:2014-09-05 19:25:52

标签: java android integer

我试图存储" 0xFF000000"与Java中的整数相似。如果我声明一个像headerBackgroundColor = 0xFF000000这样的值,那么一切正常。但是当我通过

分析0xFF000000的json字符串时

Integer.decode(jsonObject.getString("HeaderBackgroundColor")); Integer.parseInt(jsonObject.getString("HeaderBackgroundColor"));

我收到此错误 - java.lang.NumberFormatException: Invalid int: "0xFF000000"

我检查了json中的值是否正确,并且它是一个有效的int值。我不知道为什么String不能正确解析...

谢谢

1 个答案:

答案 0 :(得分:2)

由于您正在分析颜色,请尝试使用适合该任务的工具 - > Color类有方法:

public static int parseColor(String colorString)

和文档说(link):

  

支持的格式包括:#RRGGBB #AARRGGBB'红色','蓝色','绿色','黑色',&#39 ; white',' grey',' cyan',' magenta',' yellow',' lightgray' ,' darkgray'。

如果您无法改变JSON的构建方式,请在解析之前将0x替换为#