Şu anda bir XLSX dosyasından veri okumam gerektiğinden Apachi ile çalışıyorum ve daha sonra CSV'ye dönüştürülecektir. İşte benim XSSFWorkbook'umu oluşturmak için kullanıyorum kod, ve her seferinde bir istisna neden oluyor. Bulduğum şeyden, XMLBeans, nedeninin bir parçası. Bununla birlikte, kullanımdan kaldırılmıştır, ancak bu durumda İÇN'nin bir bağımlılığıdır.XLSX dosyasını okumak için Apache POI kullanırken istisna
public static void appendCSV(File inputFile, String outputFile, String tag)
{
System.out.println(inputFile.getAbsolutePath());
InputStream inp = null;
try {
inp = new FileInputStream(inputFile);
XSSFWorkbook wb = new XSSFWorkbook(inp);
Benim istisnam yukarıdaki satırdaki son satırda atılır.
Exception in thread "main" org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException
at org.apache.poi.POIXMLFactory.createDocumentPart(POIXMLFactory.java:65)
at org.apache.poi.POIXMLDocumentPart.read(POIXMLDocumentPart.java:601)
at org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:174)
at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:279)
at BigBangarang.appendCSV(BigBangarang.java:68)
at BigBangarang.main(BigBangarang.java:268)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.apache.poi.xssf.usermodel.XSSFFactory.createDocumentPart(XSSFFactory.java:56)
at org.apache.poi.POIXMLFactory.createDocumentPart(POIXMLFactory.java:62)
... 5 more
Caused by: java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlOptions.setLoadEntityBytesLimit(I)Lorg/apache/xmlbeans/XmlOptions;
at org.apache.poi.POIXMLTypeLoader.<clinit>(POIXMLTypeLoader.java:50)
at org.apache.poi.xssf.model.SharedStringsTable.readFrom(SharedStringsTable.java:127)
at org.apache.poi.xssf.model.SharedStringsTable.<init>(SharedStringsTable.java:108)
... 11 more
Daha önce bu duruma rastlanan var mı? XMLBeans'in en yeni sürümüne sahibim ve bir yöntemin eksik olduğunu söylediği gibi eski bir sürümü bulmam gerektiği gibi hissediyorum. Bir XLSX'i okumak veya herhangi bir veriyi işlemeye başlamadan önce bir CSV'ye dönüştürmek için alternatif/kolay bir yol olup olmadığından emin değilim.
Apache POI ve java sürümü nedir? – esprittn
Bir kütüphane çakışma var. Eğer Maven kullanıyorsanız pom.xml gönderin. –
POI 3.14, Java 7. Aşağıda, başvurulan tüm kitaplıkların bir ekran görüntüsü var, belki de önceki Apache ortak kütüphanelerimden bazılarıyla çakışabiliyor olabilir mi? http://i.imgur.com/pfojX1H.png – Kristoff