我试图用沃森的文档转换服务将一些文档转换为答案单元,使用Node.js中的Watson -developer-cloud Javascript库。某些文件(例如IBM内部链接中的.DOCX文件)返回以下错误:
Error: code:400 Error:提供的数据似乎在Office中2007 + XML。您正在调用POI中处理OLE2 Office的部分文档。您需要调用POI的不同部分来处理此操作数据(如XSSF代替HSSF)
如果我试图通过文档转换演示网站转换它,它似乎转换没有错误。我的程序从源代码下载文件,将其写入磁盘,然后通过上面提到的库将其上传到文档转换服务。
有没有办法解决这个错误?考虑到此转换是数千个文档的大规模自动转换的一部分,因此对这些异常值进行手动处理是不可能的。
服务尝试使用文件的前几个字节和文件名自动检测上传文件的媒体类型。
如果文件名不可用(即,用户没有传入),您可以在convert调用的文件部分提供要上传的文件的媒体类型:
file: {
value: fs.createReadStream('filename'),
options: {
contentType: 'application/vnd.openxmlformats officedocument.wordprocessingml.document'
}
}