-6

当我在 mysql 中保存时出现错误:java.lang.NumberFormatException: For input string: "" 当我想在 mysql 中注册记录时

我的代码

尝试 {

    Proce_Analisis=conn.prepareCall(Insertar_Ana);//
    procedure1=conn.prepareCall(Insertar_Tole);//


    Proce_Analisis.setInt(1,Integer.parseInt(a));
    Proce_Analisis.setInt(2,Integer.parseInt(eti_lote.getText().trim()));
    Proce_Analisis.setInt(3,Integer.parseInt(eti_num.getText().trim()));
    Proce_Analisis.setInt(4,Integer.parseInt(eti_sem.getText().trim()));
    Proce_Analisis.setString(5,txt_fecha.getText());
    Proce_Analisis.setString(6,eti_rech.getText());
    Proce_Analisis.setString(7,txt_texto.getText());
    Proce_Analisis.setString(8,cmb_ind.getSelectedItem().toString());
    rs=Proce_Analisis.executeQuery();
    rs.first();
4

3 回答 3

0

在将字符串解析为 int 之前。检查字符串是否为空或空,如下所示

if(str != null && !str.isEmpty())
于 2013-08-05T19:38:32.930 回答
0

看起来您正在尝试从空字符串中解析数字

我想这是你的Integer.parseInt(str)电话之一

当您检查这些调用时使用调试器并确保您传递给它的字符串不是空字符串:""。如果是,它将抛出异常。


一旦你发现这发生在哪里,你必须问自己一个问题:

这个字符串是否有任何业务为空

  • 如果是这样,那么您应该在尝试解析您int的 s 之前检查空字符串,并相应地处理这种情况。

  • 如果不是,那么您应该首先找出字符串为空的原因并修复它。

于 2013-08-05T19:37:24.890 回答
0

捕获异常并警告用户。如果它不是用户端应用程序,只需事先检查空字符串或空字符串,您应该不会遇到这个问题。

于 2013-08-05T19:40:32.093 回答