3

下面的代码来自一个试图从提交的 html 表单中读取数据的 Servlet。该变量fieldValue是一个字符串并打印正确的值(就像这样BizStr: 5)但是当我尝试将此值解析为整数时,它不会打印任何内容。

for(FileItem uploadItem : uploadItems){
  if(uploadItem.isFormField()){
    String fieldName = uploadItem.getFieldName();
    String fieldValue = uploadItem.getString();
    if(fieldName.equals("business_id")){
        out.println("BizStr: "+ fieldValue +"\n");
        out.println("BizInt: "+ Integer.parseInt(fieldValue )+"\n");
    }
  }
}

为什么这个字符串没有被解析成整数?

4

1 回答 1

10

测试:

Integer.parseInt(" 5");  // space before; yields NumberFormatException

Integer.parseInt("5 ");  // space after; yields NumberFormatException

尝试解析前trim()fieldValue

out.println("BizInt: "+ Integer.parseInt(fieldValue.trim() )+"\n");
于 2013-05-01T23:18:51.207 回答