java如何将日期发送到游标?
我无法用光标获取日期,我测试了所有可能性,但找不到解决方案
我都试过了。
问题是我想在4行中获取KEY_DATE_TREATMENT
public List<Treatment> getTreatmentsList(){
List<Treatment> tList = new ArrayList<>();
Cursor c = getTreatments();
if (c.moveToFirst())
{
do {
SimpleDateFormat dateFormatprev = new SimpleDateFormat("yyyy-MM-dd");
Date d = new Date();
try {
d = dateFormatprev.parse(c.getString(c.getColumnIndex(KEY_DATE_TREATMENT)));
}
catch (ParseException e){
}
Treatment data = new Treatment(c.getInt(c.getColumnIndex(KEY_ID_TREATMENT)),
c.getInt(c.getColumnIndex(KEY_IDPARCEL_TREATMENT)),
c.getInt(c.getColumnIndex(KEY_IDTREATMENTPRODUCT_TREATMENT)),
c.getInt(c.getColumnIndex(KEY_IDWEATHER_TREATMENT)),
c.getString(c.getString(c.getColumnIndex(KEY_DATE_TREATMENT)));
tList.add(data);
}
while (c.moveToNext());
}
c.close();
}
我目前的错误是:
getString(int) in Cursor cannot be applied to Java.lang.String
# 1 楼答案
您对
getString()
有一个额外的不必要的错误呼叫:更改为:
# 2 楼答案
更改固定:-
致:
您试图使用^{} ,使用字符串arg,而不是intarg,因为您将
c.getString(c.getColumnIndex(KEY_DATE_TREATMENT))
作为arg。arg返回字符串(您想要获取的数据)而不是int链接说:
c.getColumnIndex(KEY_DATE_TREATMENT)
获取一个int,该列的列偏移量为name,值为KEY\u DATE\u TREATMENT,使用getString
方法(与使用getInt
的其他行一样)