关于文件扫描到乱码文件名,出现崩溃问题


今天记录这个问题,因为这个问题困扰了我很长时间,一直以为是转码问题,然后一直用这个思路去考虑,然后一直在绕圈。


错误:file.list() 崩溃。因为其中扫描的文件中,有一个文件名为乱码(注意这里的乱码不是因为文件名是中文,然后输出乱码。而是其本身就是乱码,所以导致扫描过程中,就报错了),所以导致崩溃。

错误日志为:

12-28 14:45:44.354 8763-9443/com.rine A/art: art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: input is not valid Modified UTF-8: illegal continuation byte 0xdc
12-28 14:45:44.354 8763-9443/com.rine A/art: art/runtime/java_vm_ext.cc:410]     string: '?????30936465'
12-28 14:45:44.354 8763-9443/com.rine A/art: art/runtime/java_vm_ext.cc:410]     in call to NewStringUTF


试过用try()方法解决,但依据报错。也试过转码,但其扫描过程就报错,所以转码依旧不行。

 解决方法则为在AndroidMainifest.xml中的application中加入android:debuggable="false"。

具体原因也不是很清楚。反正加入这个,乱码的文件名就不会报错。

你可能感兴趣的:(android)