我正在嘗試使用數據庫計數驗證固定長度的文件計數,當它與計數匹配時,pass 語句不會在 if 語句中執行,但是它將轉到 else 語句。任何方向都會被應用。以下是我的代碼:static String ubservicesCount = ""; String connectionUrl = "jdbc:sqlserver://"+strpServer+":"+strpPort+";databaseName="+strpDatabase+";IntegratedSecurity=true"; // Declare the JDBC objects. Connection con = null; Statement stmt = null; ResultSet rs = null; Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); con = DriverManager.getConnection(connectionUrl); String SQL = strpQuery5+Qt+ProcessID+Qt; stmt = con.createStatement(); rs = stmt.executeQuery(SQL); while (rs.next()) { ubservicesCount = rs.getString(1); System.out.println("UB servicesCount is " +ubservicesCount); } String st; BufferedReader Br = null; File objFile = new File(strPlanFile+NewFileNmae); Br = new BufferedReader(new FileReader(objFile)); List<String> list = new ArrayList<String>(); while ((st = Br.readLine()) != null) { String arraylist = st; String RcdType = arraylist.substring(0, arraylist.length()-392); list.add(RcdType); 執行后,它在我的報告中的 else 語句中打印失敗。我調試了哪里可以看到在比較語句中它與計數匹配。我不確定我在這里缺少什么。
1 回答

哆啦的時光機
TA貢獻1779條經驗 獲得超6個贊
嘗試這個
if(ubservicesCount.trim().toString().equalsIgnoreCase(String.ValueOf(fileCount)))
我認為問題在于您正在使用 .equals 并將字符串對象與 int 進行比較...
IE
boolean java.lang.String.equals(Object anObject)
將此字符串與指定對象進行比較。當且僅當參數不為 null 并且是表示與此對象相同的字符序列的 String 對象時,結果才為真。
添加回答
舉報
0/150
提交
取消