2016-12-29 115 views
1

我使用模拟器和Xamarin工作室C#Bt提取zip文件到目录我得到的错误数我已经尝试了一些方法,但无法解决这个问题。我可以如何解决这个问题。这是我的代码:提取zip文件到目录

string zipPath=("/storage/emulated/0/Download/file/file/file.epub"); 
    string extractPath = ("/storage/emulated/0/Download/file/file/temp"); 
    DateTime time = new DateTime(2016, 12, 30); 
    if (File.Exists(extractPath)) 
     File.SetLastWriteTime(extractPath, time); 
    ZipFile.ExtractToDirectory(zipPath, extractPath); 

但我得到这样的错误:

[MonoDroid] System.IO.IOException: Invalid parameter 
[MonoDroid] at System.IO.File.SetLastWriteTime (System.String path, System.DateTime lastWriteTime) [0x00030] in <500f590720b848ecadaddac3c375ddb5>:0 
[MonoDroid] at AD_Forms.AD..ctor() [0x00061] in <21d9786453cc4650b478317d331d91ab>:0 
[MonoDroid] at AD_Forms.App..ctor() [0x00006] in <21d9786453cc4650b478317d331d91ab>:0 
[MonoDroid] at AD_Forms.Droid.MainActivity.OnCreate (Android.OS.Bundle bundle) [0x00022] in <21d9786453cc4650b478317d331d91ab>:0 
[MonoDroid] at Android.Support.V4.App.FragmentActivity.n_OnCreate_Landroid_os_Bundle_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_savedInstanceState) [0x00011] in <27c17fe440cf491ba8255bcefade6e02>:0 
[MonoDroid] at (wrapper dynamic-method) System.Object:a118a7e9-2106-4f87-a55c-98f583aa9bd8 (intptr,intptr,intptr) 
[art] JNI RegisterNativeMethods: attempt to register 0 native methods for android.runtime.JavaProxyThrowable 
[AndroidRuntime] Shutting down VM 
[AndroidRuntime] FATAL EXCEPTION: main 
[AndroidRuntime] Process: com.companyname.ad_forms, PID: 1909 
[AndroidRuntime] java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 
[AndroidRuntime] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
[AndroidRuntime] Caused by: java.lang.reflect.InvocationTargetException 
[AndroidRuntime] at java.lang.reflect.Method.invoke(Native Method) 
[AndroidRuntime] at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
[AndroidRuntime] ... 1 more 
[AndroidRuntime] Caused by: android.runtime.JavaProxyThrowable: System.IO.IOException: Invalid parameter 
[AndroidRuntime] at System.IO.File.SetLastWriteTime (System.String path, System.DateTime lastWriteTime) [0x00030] in <500f590720b848ecadaddac3c375ddb5>:0 
[AndroidRuntime] at AD_Forms.AD..ctor() [0x00061] in <21d9786453cc4650b478317d331d91ab>:0 
[AndroidRuntime] at AD_Forms.App..ctor() [0x00006] in <21d9786453cc4650b478317d331d91ab>:0 
[AndroidRuntime] at AD_Forms.Droid.MainActivity.OnCreate (Android.OS.Bundle bundle) [0x00022] in <21d9786453cc4650b478317d331d91ab>:0 
[AndroidRuntime] at Android.Support.V4.App.FragmentActivity.n_OnCreate_Landroid_os_Bundle_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_savedInstanceState) [0x00011] in <27c17fe440cf491ba8255bcefade6e02>:0 
[AndroidRuntime] at (wrapper dynamic-method) System.Object:a118a7e9-2106-4f87-a55c-98f583aa9bd8 (intptr,intptr,intptr) 
[AndroidRuntime] at md595826e4c93c1bb9112307fcbc37b1beb.MainActivity.n_onCreate(Native Method) 
[AndroidRuntime] at md595826e4c93c1bb9112307fcbc37b1beb.MainActivity.onCreate(MainActivity.java:29) 
[AndroidRuntime] at android.app.Activity.performCreate(Activity.java:6237) 
[AndroidRuntime] at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
[AndroidRuntime] at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
[AndroidRuntime] at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
[AndroidRuntime] at android.app.ActivityThread.-wrap11(ActivityThread.java) 
[AndroidRuntime] at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
[AndroidRuntime] at android.os.Handler.dispatchMessage(Handler.java:102) 
[AndroidRuntime] at android.os.Looper.loop(Looper.java:148) 
[AndroidRuntime] at android.app.ActivityThread.main(ActivityThread.java:5417) 
+0

你解决了这个问题吗?我有同样的问题! – John

回答

0

你添加的权限,可以在manifest文件?

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 

本报告到Bugzilla提,这可能是由于Android的缺陷: https://bugzilla.xamarin.com/show_bug.cgi?id=3029

尝试运行实际设备而不是模拟器的代码来检查其是否也有同样的问题。

+0

是的我已在清单文件中添加了上述权限。 – ShahNawaz