Проблема с использованием Apache Poi для записи файла excel (xlsx) в Android Studio. Ищете решение или альтернативы для написания excel, кроме apache poi - PullRequest
0 голосов
/ 06 августа 2020

Итак, я новичок ie и работаю над проектом в android студии, и мне нужно записать данные в файл Excel во внутреннем хранилище (.xlsx). У меня есть разрешение, и теперь я использую новейшую версию apache -poi. Я боролся с проблемами за проблемами, так как я новичок в студии android. Я включил apache -poi, oo xml, oo xml -schema, xmlbeans. и у меня проблема с импортом javax. xml .XMLstreamreader, поэтому я попытался включить stax-api-1.0-2.jar, но теперь я получил эту ошибку при запуске моего приложения:

2020-08-06 09:50:58.565 21959-21959/com.example.aviatic E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.aviatic, PID: 21959
java.lang.RuntimeException: http://xml.org/sax/properties/declaration-handler
    at org.apache.xmlbeans.impl.store.Locale$SaxLoader.<init>(Locale.java:3397)
    at org.apache.xmlbeans.impl.store.Locale$XmlReaderSaxLoader.<init>(Locale.java:3087)
    at org.apache.xmlbeans.impl.store.Locale.getSaxLoader(Locale.java:3072)
    at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1272)
    at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1259)
    at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:345)
    at org.openxmlformats.schemas.drawingml.x2006.main.ThemeDocument$Factory.parse(Unknown Source:6)
    at org.apache.poi.xssf.model.ThemesTable.<init>(ThemesTable.java:86)
    at org.apache.poi.xssf.usermodel.-$$Lambda$gobcPWQfEUc0tCYBAe7wHcxGUMU.init(Unknown Source:2)
    at org.apache.poi.ooxml.POIXMLFactory.createDocumentPart(POIXMLFactory.java:61)
    at org.apache.poi.ooxml.POIXMLDocumentPart.read(POIXMLDocumentPart.java:684)
    at org.apache.poi.ooxml.POIXMLDocument.load(POIXMLDocument.java:180)
    at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:288)
    at org.apache.poi.xssf.usermodel.XSSFWorkbookFactory.createWorkbook(XSSFWorkbookFactory.java:97)
    at org.apache.poi.xssf.usermodel.XSSFWorkbookFactory.createWorkbook(XSSFWorkbookFactory.java:147)
    at org.apache.poi.xssf.usermodel.-$$Lambda$yquywgZvwleeEnxnw8O_y36aF30.apply(Unknown Source:2)
    at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:256)
    at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:221)
    at com.example.aviatic.AutoStatisActivity.copyAsset(AutoStatisActivity.kt:179)
    at com.example.aviatic.AutoStatisActivity.access$copyAsset(AutoStatisActivity.kt:26)
    at com.example.aviatic.AutoStatisActivity$onCreate$3.onClick(AutoStatisActivity.kt:86)
    at android.view.View.performClick(View.java:7339)
    at android.widget.TextView.performClick(TextView.java:14222)
    at android.view.View.performClickInternal(View.java:7305)
    at android.view.View.access$3200(View.java:846)
    at android.view.View$PerformClick.run(View.java:27787)
    at android.os.Handler.handleCallback(Handler.java:873)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7078)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
 Caused by: org.xml.sax.SAXNotRecognizedException: http://xml.org/sax/properties/declaration-handler
    at org.apache.harmony.xml.ExpatReader.setProperty(ExpatReader.java:162)
    at org.apache.xmlbeans.impl.store.Locale$SaxLoader.<init>(Locale.java:3391)
    at org.apache.xmlbeans.impl.store.Locale$XmlReaderSaxLoader.<init>(Locale.java:3087) 
    at org.apache.xmlbeans.impl.store.Locale.getSaxLoader(Locale.java:3072) 
    at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1272) 
    at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1259) 
    at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:345) 
    at org.openxmlformats.schemas.drawingml.x2006.main.ThemeDocument$Factory.parse(Unknown Source:6) 
    at org.apache.poi.xssf.model.ThemesTable.<init>(ThemesTable.java:86) 
    at org.apache.poi.xssf.usermodel.-$$Lambda$gobcPWQfEUc0tCYBAe7wHcxGUMU.init(Unknown Source:2) 
    at org.apache.poi.ooxml.POIXMLFactory.createDocumentPart(POIXMLFactory.java:61) 
    at org.apache.poi.ooxml.POIXMLDocumentPart.read(POIXMLDocumentPart.java:684) 
    at org.apache.poi.ooxml.POIXMLDocument.load(POIXMLDocument.java:180) 
    at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:288) 
    at org.apache.poi.xssf.usermodel.XSSFWorkbookFactory.createWorkbook(XSSFWorkbookFactory.java:97) 
    at org.apache.poi.xssf.usermodel.XSSFWorkbookFactory.createWorkbook(XSSFWorkbookFactory.java:147) 
    at org.apache.poi.xssf.usermodel.-$$Lambda$yquywgZvwleeEnxnw8O_y36aF30.apply(Unknown Source:2) 
    at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:256) 
    at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:221) 
    at com.example.aviatic.AutoStatisActivity.copyAsset(AutoStatisActivity.kt:179) 
    at com.example.aviatic.AutoStatisActivity.access$copyAsset(AutoStatisActivity.kt:26) 
    at com.example.aviatic.AutoStatisActivity$onCreate$3.onClick(AutoStatisActivity.kt:86) 
    at android.view.View.performClick(View.java:7339) 
    at android.widget.TextView.performClick(TextView.java:14222) 
    at android.view.View.performClickInternal(View.java:7305) 
    at android.view.View.access$3200(View.java:846) 
    at android.view.View$PerformClick.run(View.java:27787) 
    at android.os.Handler.handleCallback(Handler.java:873) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:214) 
    at android.app.ActivityThread.main(ActivityThread.java:7078) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964) 

И, похоже, эти «саксофонные» вещи сейчас издеваются. Кто-нибудь знает какое-нибудь решение этого? Или у кого-нибудь есть другие предложения о том, как я могу написать excel (xlsx) в студии android? Мне просто нужно было написать 20 ~ ячейку и все.

Спасибо

...