Android iCalendar字符串到日历
我有一个iCalendar格式字符串,如下所示: 我想在日历对象中转换它。 我该怎么做?我必须自己解析字符串,或者有一些方法可以这样做 编辑: 最后,我提出了以下解决方案:Android iCalendar字符串到日历,android,icalendar,Android,Icalendar,我有一个iCalendar格式字符串,如下所示: 我想在日历对象中转换它。 我该怎么做?我必须自己解析字符串,或者有一些方法可以这样做 编辑: 最后,我提出了以下解决方案: Intent intent = new Intent(Intent.ACTION_EDIT); intent.setType("vnd.android.cursor.item/event"); String[] split=s.split("\n|(:)"); for(int i=0;i<
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
String[] split=s.split("\n|(:)");
for(int i=0;i<split.length;i++){
if(split[i].contains("DTSTART")){
//next String contain the data start
String s1=split[i+1];
s1=s1.replace("T", "");//remove T
s1=s1.replace("00Z", "");//remove final part
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmm");
Date date;
try {
date = sdf.parse(s1);
Log.d("", "START "+date.getTime());
intent.putExtra("beginTime",date.getTime());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(split[i].contains("DTEND")){
//next string contains the data end
String s1=split[i+1];
s1=s1.replace("T", "");//remove T
s1=s1.replace("00Z", "");//remove final part
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmm");
Date date;
try {
date = sdf.parse(s1);
Log.d("", "END "+date.getTime());
intent.putExtra("endTime", date.getTime());
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(split[i].contains("LOCATION")){
//next string contains location
Log.d("", "Luogo "+split[i+1]);
intent.putExtra("eventLocation",split[i+1]);
}
if(split[i].contains("DESCRIPTION")){
//next string contains location
Log.d("", "Descrizione "+split[i+1]);
intent.putExtra("description",split[i+1]);
}
if(split[i].contains("SUMMARY")){
//next string contains title
Log.d("", "Titolo "+split[i+1]);
intent.putExtra("title",split[i+1]);
}
}
startActivity(intent);
Intent Intent=新意图(Intent.ACTION\u EDIT);
intent.setType(“vnd.android.cursor.item/event”);
字符串[]split=s.split(“\n |(:)”);
对于(int i=0;i您可以查看iCal4j库。它可能会对您有所帮助。我不想创建.ics文件,只是Android中的Calendar对象。您需要提供有关您的特定问题的更多信息。Android的Calendar
不是通常意义上的日历,而是获取特定日期/时间信息的一种方式。如果您想要direct翻译ICalendar文件您需要使用现有库(如)或编写自己的解析系统来获取信息。