2016-04-07 14 views
0

.xlsx dosyası Oku, ancak canbüyük Excel i</p> <pre><code>org.xml.sax </code></pre> <p>kitaplık çalışıyorum kütüphaneye</p> <pre><code>org.apache.poi XSSFWorkbook workbook = new XSSFWorkbook(fileInputStream); </code></pre> <p>kullanıyorum

NOT çalışma kitabına değil mümkün dönüştürme it: sondaki sonuçta ortaya XSSFWorkbook'un

numaralı telefondan döndürülmesini istiyorum. Yukarıdaki kod hafızadan silinecek, herhangi bir yardım takdir edilecektir ThankQ önceden

+1

"NOT: sonuçta XSSFWorkbook'un döndürülmesini istiyorum": Bu mümkün değil. XSSFWorkbook'un tamamen bellekte olması gerekir. SXSSFWorkbook https://poi.apache.org/spreadsheet/how-to.html#sxssf kullanmayı deneyin. –

+0

Soru, SXSSFWorkbook'un yazdığı okuma, yazma, yazma hakkında konuşuyor. – centic

cevap

1

Girilen veriler, kullanılabilir bellek için çok büyükse, iki seçeneğiniz vardır.

a) -Xmx Java komut seçenek

b) Streaming-API of POI kullanımı ile daha fazla bellek sağlar.

Seçenek a) dosyalar belleğe uygun şekilde sığarsa yapılması kolay olacaktır. Dosya mevcut fiziksel bellek için çok büyükse, akış seçeneklerine bir göz atmanız gerekir, özellikle örnek XLSX2CSV, rastgele büyük .xlsx dosyalarındaki verileri, birden çok erişmesi gereken bazı özelliklerle de olsa nasıl okuyabileceğinizi gösterir. hücreler kutudan çıkarılmaz.

İlgili konular