[英]nullpointer error while writing .ics file in android
我是FileOutputStream和ical4j的新手。 每當我嘗試運行此代碼時,在第二次try / catch中都會出現空指針錯誤。 在第一次try / catch之后,fout的值也為null。代碼有什么問題? 雖然不太可能,但是我沒有在android清單中聲明一些許可/其他東西嗎?
java.util.Calendar cal = java.util.Calendar.getInstance();
cal.set(java.util.Calendar.MONTH, java.util.Calendar.DECEMBER);
cal.set(java.util.Calendar.DAY_OF_MONTH, 26);
VEvent christmas = new VEvent(new Date(cal.getTime()), "Post-Christmas Day");
christmas.getProperties().getProperty(Property.DTSTART).getParameters().add(Value.DATE);
FileOutputStream fout = null;
try {
fout = new FileOutputStream("mycalendar.ics");
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
CalendarOutputter outputter = new CalendarOutputter();
try {
outputter.output(calendar, fout);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ValidationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
清單文件如下所示:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CALENDAR"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
和
<activity android:name=".Cal"></activity>
原因可能是因為您沒有在FileOutputStream實例的數據分區中使用sdcard或應用程序的分區。 您可以通過Environment類中的靜態字段來實現。
在第一個try&catch塊之后-確保fout不為null。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.