Apache POI将txt文件读取为excel文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache POI将txt文件读取为excel文件相关的知识,希望对你有一定的参考价值。
找不到这个确切用例的很多例子。基本上我有两个目录,应该包含相同的文件,混合.xlsx文件和.txt文件。我编写了一堆代码来比较.xlsx文件,并且还可以返回它找到的任何不匹配的坐标(行,列)。
我的代码似乎与文本文件一样有问题,我可以通过excel手动打开这个,它是一个制表符分隔的文本文件。
当我尝试将其转换为XSSFWorkbook时,它不喜欢,其中File excelFile1是我的文本文件:
FileInputStream controlFile = new FileInputStream(this.excelFile1);
XSSFWorkbook controlWorkBook = new XSSFWorkbook(controlFile);
我得到的例外是:
org.apache.poi.openxml4j.exceptions.NotOfficeXmlFileException: No valid entries or contents found, this is not a valid OOXML (Office Open XML) file
我想这是因为它是.txt文件而不是.xlsx文件?没有为文本文件编写单独的逻辑,有没有办法解决这个问题?有没有办法像.xlsx文件一样处理.txt文件?
谢谢!
答案
CSV文本文件不是Excel文件,无法使用POI进行操作。
在这些情况下,您必须编写新代码以使用CSV阅读器(例如OpenCSV或Apache Commons CSV),并在内存中实现该文件的模型。
以上是关于Apache POI将txt文件读取为excel文件的主要内容,如果未能解决你的问题,请参考以下文章
通过 Apache POI 读取大型 Excel 文件 (xlsx) 时出错