我希望有人可以帮助我,这就是情况:
我有一个NFC芯片(Mifare Classic 4K),我读了一些信息(这是一张学校卡,所以我读了学生编号,例如。)
)当我阅读它时,然后将其放在我的文本视图中:
mtextview.setText(cardData);
我明白了:" 1330955"
当我在System.out.println()中写出它时:
system.out.println(carddata);
我明白了:" 1330955 ???????????????
当我尝试通过JDBC将其放入数据库中时
try {
String sql = "insert into studentCards (studentNumber, title, firstName, lastName, dateOfBirth, gender)" + " VALUES(?,?,?,?,?,?)";
DriverManager.setLoginTimeout(5);
conn = DriverManager.getConnection(url);
PreparedStatement pStatement = conn.prepareStatement(sql);
pStatement.setInt(1, cardData);
pStatement.setString(2, title);
pStatement.setString(3, firstName);
pStatement.setString(4, lastName);
pStatement.setString(5, dateOfBirth);
pStatement.setString(6, gender);
int rs = pStatement.executeUpdate();
return retval = Integer.toString(rs);
} catch (SQLException e) {
e.printStackTrace();
return retval = e.toString();
} finally {
System.out.println("Closing the connection.");
if (conn != null) try { conn.close(); } catch (SQLException ignore) {}
}
我得到了:
" 1330955 0 0 0 0 0 0 0 0 0 0 0"作为学生编号...
我尝试了一切...如何在数据库中获取数字(1330955)?我什至尝试使用split()函数,但这不起作用。
你们中的一个可以帮我吗?如果您需要更多信息,请让我知道!
已解决!
我必须在carddata上使用.trim()。
使用Java本机类字符串