flutter 如何将字符串解析为int而不出现下一个错误?

a0zr77ik  于 2023-03-19  发布在  Flutter
关注(0)|答案(1)|浏览(131)

使用var pinU = int.parse(pin.text);时,我得到以下错误:

E/flutter (16045): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: FormatException: Invalid number (at character 1)
E/flutter (16045):
E/flutter (16045): ^

使用var pinU = pin as int;时,我得到这个错误:

E/flutter (16045): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: type 'String' is not a subtype of type 'int' in type cast

我尝试将一个PIN传递给数据库助手函数以获取结果。下面是我的完整函数:

login2() async {
    var usernameU = username.text;
    var pinU = int.parse(pin.text);

    await DBProvider.db.getUser(usernameU, pinU).then((tempUser) {
      Navigator.push(context as BuildContext,
          MaterialPageRoute(builder: (context) => const WelcomePage()));
    }).catchError((err) {
      // ignore: avoid_print
      print('Error: $err');
    });
  }

我需要传递一个int,但是这个错误是持续的。

dced5bon

dced5bon1#

使用int代替var作为数据类型。

int pinU = int.parse(pin.text ?? "0");

相关问题