我是android編程的新手,所以請和我一起裸照。我有一個問題,與日期比較。我有一個來自TextView的日期(通常存儲在SQLite文本字段中)。 TextView rowduedate攜帶一個日期,其值爲:「2012/10/01 15:16」 如果我對我在下面粘貼的代碼進行了註釋,它會正常工作,並顯示R.id.rowduedate。所以它不是空的。但是我得到的logcat中出現以下錯誤:如何將日期TextView轉換爲長與當前日期進行比較
11-01 15:16:55.445: E/AndroidRuntime(783): FATAL EXCEPTION: main
11-01 15:16:55.445: E/AndroidRuntime(783): java.lang.NumberFormatException: Invalid long: ""
11-01 15:16:55.445: E/AndroidRuntime(783): at java.lang.Long.invalidLong(Long.java:125)
11-01 15:16:55.445: E/AndroidRuntime(783): at java.lang.Long.parseLong(Long.java:346)
11-01 15:16:55.445: E/AndroidRuntime(783): at java.lang.Long.parseLong(Long.java:319)
11-01 15:16:55.445: E/AndroidRuntime(783): at com.android.demo.notepad3.Notepadv3$1.setViewValue(Notepadv3.java:100)
這是代碼:
TextView dueDate = (TextView) view.findViewById(R.id.rowduedate);
String due = (String) dueDate.getText().toString();
if(due!=null){
Long longDue = Long.parseLong(due);
String now = new Date().toString();
Long longNow = Long.parseLong(now);
if(longDue <= longNow){
dueDate.setTextColor(Color.RED);
}
}
希望有人能幫助我在正確的軌道上。
謝謝。