我正在尝试创建一个 android 应用程序。
我InputStream inputStream=getAssets().open("book.txt");
用来阅读book.txt
;
我只想从 InputStream 获取 MappedByteBuffer 对象;
谁知道?
========= ===========
我使用FileInputStream fis = (FileInputStream) inputStream;
导致错误!这是错误日志:
10-27 10:45:55.830: D/dalvikvm(9243): GC_EXTERNAL_ALLOC 释放 22K, 53% 释放 2577K/5379K, 外部 1916K/2428K, 暂停 62ms 10-27 10:45:55.940: D/dalvikvm(9243): GC_EXTERNAL_ALLOC 释放 2K,53% 释放 2577K/5379K,外部 2516K/2516K,暂停 69ms 10-27 10:45:56.230: I/fileName(9243): sahala.txt 10-27 10:45:56.240: D/szipinf(9243): 初始化充气状态 10-27 10:45:56.240: D/AndroidRuntime(9243): 关闭虚拟机 10-27 10:45:56.240: W/dalvikvm(9243): threadid=1: 线程以未捕获的异常退出 (group=0x40015560) 10-27 10:45:56.260: E/AndroidRuntime(9243): 致命异常: main 10-27 10:45:56.260: E/AndroidRuntime(9243): java.lang.RuntimeException: 无法启动活动 ComponentInfo{com.silenceper.bookdemo/com.silenceper.book.shl.activity.ReadBookActivity}: java.lang .ClassCastException: android.content.res.AssetManager$AssetInputStream 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.app.ActivityThread.access$1500(ActivityThread.java:117) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.os.Handler.dispatchMessage(Handler.java:99) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.os.Looper.loop(Looper.java:123) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.app.ActivityThread.main(ActivityThread.java:3683) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 java.lang.reflect.Method.invokeNative(Native Method) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 java.lang.reflect.Method.invoke(Method.java:507) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 10-27 10:45:56.260: E/AndroidRuntime(9243): at dalvik.system.NativeStart.main(Native Method) 10-27 10:45:56.260: E/AndroidRuntime(9243): 原因: java.lang.ClassCastException: android.content.res.AssetManager$AssetInputStream 10-27 10:45:56.260: E/AndroidRuntime(9243): at com.silenceper.book.shl.utils.BookPageFactory.openBookFromInputStream(BookPageFactory.java:83) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 com.silenceper.book.shl.activity.ReadBookActivity.initBookData(ReadBookActivity.java:71) 10-27 10:45:56.260: E/AndroidRuntime(9243): at com.silenceper.book.shl.activity.ReadBookActivity.onCreate(ReadBookActivity.java:58) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 10-27 10:45:56.260: E/AndroidRuntime(9243): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611) 10-27 10:45:56.260: E/AndroidRuntime(9243): ... 11 更多