我正在尝试使用以下代码读取.zip文件中的多个xls文件。我收到missed end of block
错误。在发送给poi之前,是否需要在字节数组的末尾添加EOF类型的字符?
以下代码:
val zipStream=new ZipInputStream(inputStream)
var zipEntry = null
while(zipEntry = zipStream.getNextEntry != null){
val bytes=new Array[Byte](zipEntry.getSize.toInt)
zipStream.readBytes(bytes)
val xlsByteStream = new ByteArrayInputStream(bytes)
val workbook = new XSSFWorkbook(xlsByteStream)
}
答案 0 :(得分:0)
val zipStream=new ZipInputStream(inputStream)
var zipEntry = null
while({zipEntry = zipStream.getNextEntry; zipEntry != null})
{
val bytes=new Array[Byte](1024)
val bos = new ByteArrayOuputStream(zipEntry.getSize.toInt)
while({i=zipStream.read(bytes);i>0}) {
bos.write(bytes, 0, i)
}
bos.close
val xlsByteStream = new ByteArrayInputStream(bos.toByteArray)
val workbook = new XSSFWorkbook(xlsByteStream)
}