使用iText阅读PDF时应用程序崩溃

时间:2014-03-28 15:32:47

标签: android eclipse crash itext

我正在使用iTextG作为Android应用程序。 我的目标是从现有的pdf文件中读取以供日后操作等。 我想读一个名为“Chemistry.pdf”的文件,它放在我的资源文件夹中。 我使用以下代码(尝试)阅读pdf

        AssetManager assetManager = getAssets();
        InputStream istr = null;

    try
            {
            istr =(InputStream) assetManager.open("Chemistry.pdf");         
                Log.d("OK", "done");
            }
            catch (FileNotFoundException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

当我执行代码时,应用程序崩溃了。 如果资产不起作用,我应该在哪里包含pdf文件(在应用程序内)? 出了什么问题?

P.S。 我收到这些错误(还有11个)

  

03-28 15:28:52.455:E / AndroidRuntime(918):致命异常:主03-28   15:28:52.455:E / AndroidRuntime(918):java.lang.RuntimeException:   无法开始活动   ComponentInfo {com.example.teest / com.example.teest.MainActivity}:   java.lang.ClassCastException:   android.content.res.AssetManager $ AssetInputStream无法强制转换为   com.itextpdf.text.pdf.codec.Base64 $ InputStream 03-28 15:28:52.455:   E / AndroidRuntime(918):at   android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)   03-28 15:28:52.455:E / AndroidRuntime(918):at   android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)   03-28 15:28:52.455:E / AndroidRuntime(918):at   android.app.ActivityThread.access $ 600(ActivityThread.java:141)03-28   15:28:52.455:E / AndroidRuntime(918):at   android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1234)   03-28 15:28:52.455:E / AndroidRuntime(918):at   android.os.Handler.dispatchMessage(Handler.java:99)03-28   15:28:52.455:E / AndroidRuntime(918):at   android.os.Looper.loop(Looper.java:137)03-28 15:28:52.455:   E / AndroidRuntime(918):at   android.app.ActivityThread.main(ActivityThread.java:5039)03-28   15:28:52.455:E / AndroidRuntime(918):at   java.lang.reflect.Method.invokeNative(Native Method)03-28   15:28:52.455:E / AndroidRuntime(918):at   java.lang.reflect.Method.invoke(Method.java:511)03-28 15:28:52.455:   E / AndroidRuntime(918):at   com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:793)   03-28 15:28:52.455:E / AndroidRuntime(918):at   com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)03-28   15:28:52.455:E / AndroidRuntime(918):at   dalvik.system.NativeStart.main(Native Method)03-28 15:28:52.455:   E / AndroidRuntime(918):引起:java.lang.ClassCastException:   android.content.res.AssetManager $ AssetInputStream无法强制转换为   com.itextpdf.text.pdf.codec.Base64 $ InputStream 03-28 15:28:52.455:   E / AndroidRuntime(918):at   com.example.teest.MainActivity.onCreate(MainActivity.java:30)03-28   15:28:52.455:E / AndroidRuntime(918):at   android.app.Activity.performCreate(Activity.java:5104)03-28   15:28:52.455:E / AndroidRuntime(918):at   android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)   03-28 15:28:52.455:E / AndroidRuntime(918):at   android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)

解决: 该错误是由于未初始化的变量引起的。

0 个答案:

没有答案