无法访问NPOIFSFileSystem

我想读取xls和xlsx文件。

我使用这一行来访问我的工作簿。

myWorkBook = WorkbookFactory.create(file); 

我的构buildgradle看起来像这样:apply plugin:'com.android.application'

 android { compileSdkVersion 19 buildToolsVersion "19.1.0" defaultConfig { applicationId "com.example.application" minSdkVersion 8 targetSdkVersion 19 versionCode 1 versionName "1.0" } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { exclude 'META-INF/DEPENDENCIES.txt' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/NOTICE.txt' exclude 'META-INF/NOTICE' exclude 'META-INF/LICENSE' exclude 'META-INF/DEPENDENCIES' exclude 'META-INF/notice.txt' exclude 'META-INF/license.txt' exclude 'META-INF/dependencies.txt' exclude 'META-INF/LGPL2.1' } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:appcompat-v7:19.1.0' compile files('libs/poi-3.7.jar') compile files('libs/poi-ooxml-3.9.jar') compile project(':aFileChooser') } 

我无法编译我的项目,因为我得到以下错误:

错误:(210,41)错误:无法访问org.apache.poi.poifs.filesystem.NPOIFSFileSystem的NPOIFSFileSystem类文件未find错误:任务“:app:compileDebugJava”的执行失败。 编译失败 详细信息请参阅编译器错误输出。

任何想法可能是错的?

你的问题几乎可以肯定这些线:

 compile files('libs/poi-3.7.jar') compile files('libs/poi-ooxml-3.9.jar') 

具体来说有两个问题。 首先,您必须使用Apache POI JAR的匹配版本。 不支持同时使用旧jar和新jar的混合物,它们都必须来自同一个版本。 其次,你的jar子都是旧的,因为他们的年龄错过了一些function。

把它们都转换成POI 3.10.1(或者更新,比如写作时的3.11 beta 2),然后你应该有你需要的类