Java 读写Excel文件整理

Java 读写Excel文件整理

前言:由于工作比较忙,很久没有写博客了,最近接手了某工业过程故障诊断应用软件的项目,其中实例化模拟采用的数据来源为Excel文件,其中遇到一些问题,虽最终得以解决,但仍觉有记录之必要。

正文:

section1:需要下载一个处理Excel文件的jar包(需要注意的是,此jar包只支持.xls后缀的Excel文件,不能支持.xlsx后缀的文件)

下载链接:点击下载

section2:读取Excel文件数据及常用处理

public void ReadExcelHandle() throws BiffException, IOException
	{
		//Excel文件路径
        File file = new File("C:\\Users\\XXXXXX\\Desktop\\5y测点.xls");
        //创建输入流,从流中读取数据
		InputStream in = new FileInputStream(file);
		//创建一个工作簿
		Workbook workbook_in = Workbook.getWorkbook(in);
		//1.可通过通过下标来访问Sheet表,要注意的一点是下标从0开始,就像数组一样。
		//2.可通过Sheet的名称来访问sheet表。
		Sheet sheet0 = workbook_in.getSheet(0);
		
		//1.可以通过指定行和列得到指定的单元格Cell对象,如第1列第4行
		Cell c00 = sheet0.getCell(0, 3); 
		//2.也可以得到某一行或者某一列的所有单元格Cell对象,如第1列,第4行
		Cell[] cells = sheet0.getColumn(0);
		Cell[] cells2 = sheet0.getRow(3);
		//然后再取每一个Cell中的值
		String content = cells2[0].getContents();
		String strc00 = c00.getContents();
		//测试
		System.out.println(cells[0].getContents()+strc00+content);
	}

section3:向Excel文件写入数据

public void WriteExcelHandle() throws BiffException, IOException, RowsExceededException, WriteException
	{
		//待写入数据的Excel文件路径
		File fileWrite = new File("C:\\Users\\XXXXX\\Desktop\\5y测点-t.xls");
		//创建输出流
		OutputStream os=new FileOutputStream(fileWrite);
		//创建一个可写工作簿
        WritableWorkbook workbook = Workbook.createWorkbook(os);
        //创建新的一页(第一页)(String sheetName,int index)
        WritableSheet sheet = workbook.createSheet("First Sheet",0);
        //创建要显示的内容,创建一个单元格,第一个参数为列坐标,第二个参数为行坐标,第三个参数为内容
        Label chanel = new Label(0,0,"通道");
        sheet.addCell(chanel);
        Label Sample = new Label(1,0,"采样点");
        sheet.addCell(Sample);
        Label Date = new Label(2,0,"时间");
        sheet.addCell(Date);
        Label Speed = new Label(3,0,"转速");
        sheet.addCell(Speed);
	}

section4:Java读写Excel文件注意事项

1.上面介绍了Excel文件的读写,我们采用getContents()从Excel的Cell中读取到的数据是String类型的,并不是我们期待的数值类型。因此,很多情况下,我们还需要对数据类型进行转换,这里我介绍几种常用的转换:

a.String转int;b.String转float

String str="123456";
		String str1="123.456";
		int i=Integer.parseInt(str);
		float f=Float.parseFloat(str1);
		System.out.println(i+f);

2.异常问题:在对Excel文件进行读写时,由于数据或文件本身可能存在问题(缺失、格式错误等因素),会导致程序因异常而中断,因此,须采取必要措施,一般有几种方式,大家感兴趣可以看一下:文章链接

http://www.cnblogs.com/tsiangleo/p/4396574.html


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jin_Kwok

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值