未处理的异常:FormatException:Flutter 中无效的 radix-10 数字(字符 1)
Unhandled Exception: FormatException: Invalid radix-10 number (at character 1) in Flutter
我正在尝试将字符串转换为 int,但它抛出异常“未处理的异常:FormatException:无效的 radix-10 数字(在字符 1 处)”
String aa = "627a32b69018c4b90f77af19";
int.parse(aa);
如何解决这个问题?
传递的字符串不是数字,因为它包含 non-digit 个字符,例如 a
或 f
。
您似乎喜欢将输入字符串解析为十六进制字符串,在这种情况下,请在您的代码中提供基数(基数)值。
以下片段产生 3.047725939849963e+28
的输出。
void main() {
String aa = "627a32b69018c4b90f77af19";
int? test = int.parse(aa, radix: 16);
print("$test");
}
不过,你的数字好像很大(10^28)。结果超出了int
的范围,最多64位,32位JavaScript。 (more)
在这些情况下最好使用 BigInt,它支持任意大的整数。
我正在尝试将字符串转换为 int,但它抛出异常“未处理的异常:FormatException:无效的 radix-10 数字(在字符 1 处)”
String aa = "627a32b69018c4b90f77af19";
int.parse(aa);
如何解决这个问题?
传递的字符串不是数字,因为它包含 non-digit 个字符,例如 a
或 f
。
您似乎喜欢将输入字符串解析为十六进制字符串,在这种情况下,请在您的代码中提供基数(基数)值。
以下片段产生 3.047725939849963e+28
的输出。
void main() {
String aa = "627a32b69018c4b90f77af19";
int? test = int.parse(aa, radix: 16);
print("$test");
}
不过,你的数字好像很大(10^28)。结果超出了int
的范围,最多64位,32位JavaScript。 (more)
在这些情况下最好使用 BigInt,它支持任意大的整数。