输入xls格式 输出 xls

package com.cn.peitest.excel.word;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
public class xlsToxls {

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

		//输入xls格式
		POIFSFileSystem fs = null;
		HSSFWorkbook xwb = null;
		HSSFSheet xsheet = null;
		HSSFRow xrow = null;
		HSSFCell xcell = null;
		//输出xls格式
		HSSFWorkbook hwb = new HSSFWorkbook();  
		HSSFSheet hsheet =null;// wb.createSheet("sheet1");
		HSSFRow hrow = null;//sheet.createRow(0);
		HSSFCell hcell=null;//row0.createCell(0);
		//cell0.setCellValue("0000");
		
		SimpleDateFormat df = new SimpleDateFormat("yyyy_MM_dd_HH_mm");//设置日期格式
		System.out.println(df.format(new Date()));// new Date()为获取当前系统时间
		
		
		File inf=new File("C:\Users\pei\Desktop\新建 XLS 工作表.xls");
		File ouf=new File("C:\Users\Pei\Desktop\HYD test 1_0_2 tm="+df.format(new Date())+".xls"); 
		
		boolean sheetflag=true;
		int sheetid=0;
		
		boolean rowflag=true;
		int rowid =0;
		try {
			FileInputStream fis = new FileInputStream(inf);
			xwb=new HSSFWorkbook(fis);
			System.out.println("表单数="+xwb.getNumberOfSheets());
			while(sheetflag){
				if(sheetid==xwb.getNumberOfSheets()){break;}	
				xsheet=xwb.getSheetAt(sheetid);
				if(xsheet==null){
					sheetflag=false;
				}else{
					hsheet=hwb.createSheet(xsheet.getSheetName());
					sheetid++;
					rowid=0;
					rowflag=true;
					while(rowflag){
						hrow=hsheet.createRow(rowid);
						xrow=xsheet.getRow(rowid);
						if(xrow==null){
							rowflag=false;
						}else{
							rowid++;
							for(int c=0;c<30;c++){
								
								xcell=xrow.getCell(c);
								if(xcell!=null&&xcell.toString().length()>0){
									String a1=xcell.toString().replaceAll(".00", "");	
									String a2=a1.replaceAll(".0", "");
									String data=a2.replaceAll("O", "0");
									hrow.createCell(c).setCellValue(data);
								}
							}
						}
					}
				}
			}
			
			//FileOutputStream output=new FileOutputStream(ouf);  
			//xwb.write(output);
			//System.out.println("导出结束");
			//output.close();  
		} catch (Exception e) {
			e.printStackTrace();
		}
		finally{
			System.out.println("处理结束。。。。等待导出完成");
			FileOutputStream output=new FileOutputStream(ouf);  
			hwb.write(output);
			System.out.println("导出结束");
			output.close();
		}
		
	}

   }

  

//pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>cn.com</groupId>
  <artifactId>excelReadAndWrite</artifactId>
  <version>0.0.1-SNAPSHOT</version>
   <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
	 <dependency>
	    <groupId>org.apache.directory.studio</groupId>
	    <artifactId>org.apache.commons.codec</artifactId>
	    <version>1.8</version>
	</dependency>
	 <dependency>
		<groupId>net.sourceforge.jexcelapi</groupId>
		<artifactId>jxl</artifactId>
		<version>2.6.12</version>
	</dependency>
	<dependency>
		<groupId>org.apache.poi</groupId>
		<artifactId>poi-ooxml</artifactId>
		<version>3.9</version>
	</dependency>
  </dependencies>
</project>

  

原文地址:https://www.cnblogs.com/xianz666/p/13749217.html