android程序编写无法识别xls格式文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android程序编写无法识别xls格式文件相关的知识,希望对你有一定的参考价值。

我想要在程序中建立一个excel的文件,程序是下面这么写的,每次开始运行都正常,是到了outputstream那里就会跳出至catch,而且我发现如果使用inputstream来读取xls文件也会失败。
String SDpath = Environment.getExternalStorageDirectory().getPath();
String filepath = SDpath + "EPC.xls";
try

HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("new sheet");
HSSFRow row = sheet.createRow((short)0);
HSSFCell cell = row.createCell(0);

cell.setCellValue("hello world");

FileOutputStream os = new FileOutputStream(filepath);
wb.write(os);
os.close();

catch (IOException e)
// TODO Auto-generated catch block
e.printStackTrace()

参考技术A 你好,网上给的方法试过都不能完美得到解决。现在发现两种解决方法 提供给需要的人们。

一、机器安装office兼容包(不知道的网上搜),打开以上文件还有报错 请将报错的.xls文件重名修改成XX.xlsx(就是文件类型改为xlsx )强制用兼容 最后可以打开(本人亲测) ; 如果是xlsx文件类型改成.xls

二、wps暂时代替法(可以打开打不开的文档)

纯粹手打 ,本人亲测 有问题欢迎交流
参考技术B 在Java中读写Excel文件
Jakarta的POI项目提供了一组操纵Windows文档的Java API,如下几个类提供了操作Excel文件的方便的途径:HSSFWorkbook、HSSFSheet、HSSFRow、HSSFCell,分别代表了Excel电子表格中的Book、Sheet、行和单元格。
你可以在下面地址下载到最新的POI工具包:
http://jakarta.apache.org/poi/index.html
下面的代码创建一个Excel文件test.xls,并在第一行的第一格中写入一条消息:

import org.apache.poi.hssf.usermodel.*;
import java.io.FileOutputStream;// code run against the jakarta-poi-1.5.0-FINAL-20020506.jar.
public class PoiTest

static public void main(String[] args) throws Exception

FileOutputStream fos = new FileOutputStream("d:\test.xls");
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet s = wb.createSheet();
wb.setSheetName(0, "first sheet");
HSSFRow row = s.createRow(0);
HSSFCell cell = row.createCell(0);
cell.setCellValue("Hello! This message is generated from POI.");
wb.write(fos);
fos.close();



读取Excel文件时,首先生存一个POIFSFileSystem对象,由POIFSFileSystem对象构造一个HSSFWorkbook,该HSSFWorkbook对象就代表了Excel文档。下面代码读取上面生成的Excel文件写入的消息字串:

POIFSFileSystem fs = null;
HSSFWorkbook wb = null;
try
fs = new POIFSFileSystem(new FileInputStream("d:\test.xls"));
wb = new HSSFWorkbook(fs);
catch (IOException e) e.printStackTrace();
HSSFSheet sheet = wb.getSheetAt(0);
HSSFRow row = sheet.getRow(0);
HSSFCell cell = row.getCell((short) 0);
String msg = cell.getStringCellValue();

以上是关于android程序编写无法识别xls格式文件的主要内容,如果未能解决你的问题,请参考以下文章

怎样在Android中解析doc,docx,xls,xlsx格式文

Google Maps Api在重命名包名称后无法识别包名称-Android

android studio中无法识别视频文件

Android:如何创建 .doc、.ppt、.xls、.pdf 格式的文档编辑器? [关闭]

怎么把xls文件转换成excel文件格式

应用程序无法识别非 android jar 中的功能