请教:JAVA读取word流异常:Unable to read entire block

请问在JAVA 用POI 在读取Oracle数据库中的Blob word文件时报如下错误,该如何解决,有的读取时没有问题,有的就会报这样的错误.
异常如下:
java.io.IOException: Unable to read entire block; 2 bytes read; expected 512 bytes
at org.apache.poi.poifs.storage.RawDataBlock.<init>(RawDataBlock.java:68)
at org.apache.poi.poifs.storage.RawDataBlockList.<init>(RawDataBlockList.java:52)
at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:87)
at org.textmining.extraction.word.WordTextExtractor.initWordHeader(Unknown Source)
at org.textmining.extraction.word.Word97TextExtractor.<init>(Unknown Source)
at Timing.ReadWord.ReadWord(ReadWord.java:15)
at Timing.GetInfo.ReadWord(GetInfo.java:11)
at Timing.TimingMaster.RunGongGao(TimingMaster.java:783)
at Timing.TimingMaster.main(TimingMaster.java:49)

在网上看了下,说这个POI的一个BUG,也照所说的方法试了但也不行
http://www.blogjava.net/alex/archive/2006/08/10/62823.html

另外有的还会报这样的错误:
java.io.IOException: Invalid header signature; read 7311066695147732796, expected -2226271756974174256
at org.apache.poi.poifs.storage.HeaderBlockReader.<init>(HeaderBlockReader.java:100)
at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:84)
at org.textmining.extraction.word.WordTextExtractor.initWordHeader(Unknown Source)
at org.textmining.extraction.word.Word97TextExtractor.<init>(Unknown Source)
at Timing.ReadWord.ReadWord(ReadWord.java:15)
at Timing.GetInfo.ReadWord(GetInfo.java:11)

哪位高手遇到过这样问题,有什么好的解决方案吗.
谢谢.
汇编语言与接口技术(第4版)清华大学出版社 第2章 80*86微处理器 课后题答案 阅读详情

相关推荐

光模块组成

时钟恢复电路(Clock Data Recovery,简称CDR)是光模块中的关键组成部分,CDR的作用主要是从接收到的信号中提取出数据序列,并且恢复出与数据序列相对应的时钟时序信号,从而还原接收到的具体信息。因为光信号传输至一定距离的时候,通常是长距离传输,其波形会出现一定程度的失真,接收端接收到的信号是一个个长短不一的脉冲信号,这个时候在接收端,我们就无法得到我们需要的数据。所以,这个时候就需要有信号的再生,信号的再生功能为再放大、再整形和再定时,其中的再定时指的就是CDR时钟数据恢复。

han_better的博客 5726

webflux excel文件上传:java.io.IOException: Unable to read entire header; 0 bytes read; expected 512 byte

webflux excel文件上传报错:java.io.IOException: Unable to read entire header; 275 bytes read; expected 512 bytes 报错代码: @PostMapping(value = "read/excel", consumes = MediaType.MULTIPART_FORM_DATA_VALUE) public ResponseEntity<?> uploadFile( @Api.

闪客 1674

在银河麒麟V10上部署Atlas 300i Duo:从固件到驱动的一站式踩坑笔记

日期:2025-09-09关键词:鲲鹏920、Atlas 300i Duo、银河麒麟V10、NPU、驱动、固件。

weixin_41544125的博客 2817

SB的方法对付SB的java API,处理excel,word经常出现类似于: IOException:Unable to read entire block;

java处理excel,word经常出现类似于: IOException:Unable to read entire block; 362 bytes read; expected 512 bytes 很搞笑。既然expected 512 bytes ,那我就写够512bytes囖。  ByteArrayOutputStream byteOS = new ByteArrayOutputSt

youngmean的专栏 4177

内存预取黑科技:__builtin_prefetch在数据库和游戏开发中的高阶用法

本文深入探讨了GCC内置函数`__builtin_prefetch`在数据库和游戏开发中的高阶应用。通过LevelDB的SSTable文件读取优化和UE5引擎场景数据流式加载的实战案例,详细解析了预取参数调优的艺术,并借助perf工具量化分析了不同策略的性能提升效果。文章还介绍了与`__builtin_expect`等内置函数的协同优化技巧,帮助开发者最大化缓存命中率。

weixin_29019241的博客 417

STM32CubeMX——循迹传感器TCRT5000的使用

前言 人生如逆旅,我亦是行人。 ————苏轼《临江仙·送钱穆父》 一、介绍 TCRT5000描述:(带有晶体管输出的反射光学传感器) TCRT5000是一种反射式光学传感器,它包括一个红外发射器和一个3.5mm引线封装的光电晶体管,可阻挡可见光。还具有1mA 典型被测输出电流,2.5mm峰值工作距离,可应用传感与仪表,工业等行业。 TCRT5000具有紧凑的结构,其中发射光源和探测器布置在同一方向,通过使用来自物体的反射红外光束来感知物体的存在。工作波长为950毫米,探测器由光电晶体管组成

W_Oilpicture的博客 1万+

java.io.IOException: Unable to read entire header; 275 bytes read; expected 512 bytes

今天做了一个上传excel表格的功能,老是报这个错误,这个错误找了老半天了,最后的解决方式也很简单 “readFirst512()将读取您的前512个字节,Inputstream并在没有足够的字节读取时抛出异常。我认为您的文件不够大,无法被POI阅读。” 可以修改一下excel格式或者把xls改成xlsx都行, ...

xubai1314521的博客 4365

RK3568平台开发系列讲解:Linux wifi的调试

查询结果中state为ENABLE,表示hostapd程序启用成功。首先查看设备是否存在。

内核笔记 168

几个oracle,POI,hibernate常见异常解决办法

POI的Unable to read entire block问题解决办法 在网上看到一些关于这个问题的解决办法,甚至修改POI源代码,但至今没有一个完美的解决方案.我在遇到这个问题时是因为对现有excel添加时报错,新建excel时不报错,所以我先忽略这个错我,把创建excel的其他问题解决后,这个问题也就顺带解决了,就是这样.所以我推测可能是创建excel表的其他问题引起了这个问题.只要解决

zb0567的专栏 1235

vLLM 显存泄漏与 OOM 深度排查:从日志到火焰图

系统性地排查 vLLM 运行中的显存泄漏和 OOM 问题,包括 CUDA 内存快照、PyTorch 内存分析器、火焰图工具。

kaixin110a的博客 187

开源3D激光SLAM算法的异同点、优劣势与适配场景总结

本文对比分析了主流开源3D激光SLAM方案的核心差异与适用场景。LOAM架构简洁但精度较低;LeGO-LOAM轻量化适合地面机器人;LIO-SAM采用因子图优化支持多传感器融合;LVI-SAM通过视觉-激光-惯性三重冗余提升鲁棒性;FAST-LIO系列基于滤波架构实现超高实时性。选型需权衡传感器配置(纯激光/激光+IMU/激光+视觉)、运动状态(高速/常规)、计算资源等因素:资源受限选LeGO-LOAM或Faster-LIO,高速运动选FAST-LIO系列,退化环境选LVI-SAM,全局一致性需求选LIO-

Studying…… 651

java 利用POI读取execel文件时出现 Unable to read entire header; 0 bytes read; expected 512 bytes 的解决方法

公司原来在导入execel文件时,是一个一个导入的;也即,每一个导入文件都要有对应的java代码实现,所以在读取execel文件的时候没出现什么问题,这两天,准备把以前的做法废掉,统一封装一下,以达到只要根据配置文件就能解析所有的execel文件并将结果返回。      在实现过程中,刚开始时用demo写的,所以execel文件是全路径的(类似于c://test/XXX.xls),解析的时候

jackshen310的专栏 3万+

元数据治理实战:构建企业数据地图与血缘体系

元数据(Metadata)是描述数据的数据,是你能了解“数据是怎么来的”、“它是做什么的”、“能不能用”的基础信息。📌 举个例子:order_idstringods_order定义:平台内用户在订单系统中产生的唯一订单编号更新时间:每天凌晨 2 点,由 Airflow 调度任务生成所属人:张三(数据开发部)🔍 这些信息本身不直接参与计算,但它们是数据可管理、可追踪、可评估的基础。模块实战建议元数据类型技术 + 业务 + 操作元数据三类统一治理治理路径。

晴天彩虹雨的博客 290

Unable to read entire header,0 bytes read;expected 512 bytes

unable to read entire header;0 bytes read;expected 512 bytes

java_LittleBird的博客 1916

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Unable to read entire header; 80 bytes read; expected 512 bytes

做了一个上传excel表格的功能,老是报这个错误,这个错误找了大半天了,最后的解决方式也很简单 “expected 512 bytes将读取您的前512个字节,Inputstream并在没有足够的字节读取时抛出异常。认为您的文件不够大,无法被POI阅读。” 可以修改一下excel格式或者把xls改成xlsx都行, 亲测有效!!! ...

weixin_44124432的博客 2808

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

poi问题解决java.io.IOException: Unable to read entire header; 0 bytes read; expected 512 bytes

FileInputStream文件与FileOutputStream分开使用即使用两个文件。FileOutputStream文件覆盖所致,问题原因为xls文件大小为0k,

2301_78754943的博客 970

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Unable to read entire header; bytes read; expected bytes

今天出现了上面的错误,他的意思大概是读取word的文件时读取不到后面大小的word文件,也就是文件大小不够,后来我去打开下文件,文件大小应该够啊,怎么会说不够呢,后来断点一看,流竟然是-1,也就是没有读到流,怎么回事,后来直接用项目中的地址打开下word文档,竟然打不开后来一看电脑上别的word文档,后缀名写错了,修改后缀名就可以了,真是粗心了,以后出现这样的错误,可以先断点看一下独到了多少流,是

熊浪的博客 4265

java.io.IOException: Unable to read entire header; 0 bytes read; expected 32 bytes

读取同一个excel的时候(多个sheet),创建了多个WorkBook会出现这种问题。引起这种错误的原因估计多个读写流同时去读取同一个内存的原因照成的,解决办法是 使用单例模式。 public static ImportPicture getImportPicture(ByteArrayInputStream in,Boolean isNew) throws IOException{

xufan007的专栏 1万+

Unable to read entire header; 336 bytes read; expected 512 bytes

产生这个的原因是我这里重复调用了InputStream, POIFSFileSystem fs = new POIFSFileSystem(multipartFile.getInputStream()); InputStreamReader read = new InputStreamReader( multipartFile.getInputStream(),encoding);...

iteye_20240的博客 1943

Poi Unable to read entire header; 0 bytes read; expected 512 bytes

Java 使用POI 读取 excel文件,错误: Unable to read entire header; 0 bytes read; expected 512 bytes 原因可能: FileInputStream 使用了两次,第二次就会报这个错  

zhlfz的博客 1987

POI 操作 wrod 和 excel 文档

java 利用POI 读写 word excel ,还算方便 1. 遇到 java.io.IOException: Unable to read entire header; 0 bytes read; expected 512 bytes 主要是打开多个文档读写,就会出问题。 打开文档需要用单例模式 在一个线程里开了一个 HSSFWorkbok(excel workbook obj...

david95的博客 401

文件传输问题

java. io. IOException: Unable to read entire header; 160 bytes read; expected 512 bytes 问题之一 打开你的文件看看是否报错,如果报错,可能是文件的问题。

YG2838833788的博客 515

文件读写

最近遇到这个问题:Unable to read entire header; 0 bytes read; expected 512 我是先创建文件,然后再读取文件,所以这里会出现问题; 读取文件的时候,它会首先检测512byte,但是文件还没有创建好,那么就会报这个错; 在读文件的时候进行判定,如果存在则可以读写,如果不存在可以让它延时一会儿;

huhusky 557

Invalid header signature; read 1688935826934608, expected -2226271756974174256

@Invalid header signature; read 1688935826934608, expected -2226271756974174256 今天在使用POI的HSSF读取excel的时候遇到了一个报错Invalid header signature; read 1688935826934608, expected -2226271756974174256 **原因:**HSSF...

i++; 4882

升级失败--failed to read block device from header

1 今天用grep过滤manifest下的分支时,少找了一个机型,后来发现是因为manifest文件本身所在分支没有更新导致,以后过滤时一定要先git pull --rebase将最新的提交拉下来 2 选择升级包时选择了一个target_files文件,导致升级失败, 这种错误的log会出现如下信息: I:Update location: @/cache/recovery/b

rockly89的博客 2319
上一篇: 表单全选(反选)
下一篇: axis 整合spring 开发
ghost_fly
博客等级 码龄20年 5粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值