`
chengyu2099
  • 浏览: 468729 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

解析 EXCEL 入库

阅读更多
package com.suypower.djbxt.czxs.servlet;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import com.suypower.djbxt.czxs.bean.ExcelBean;

/**
 * Servlet implementation class for Servlet: AjaxChouQuServlet
 *
 */
public class AjaxChouQuServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {	

	protected void doGet(HttpServletRequest request, HttpServletResponse response) 
	throws ServletException, IOException 
	{
		this.doPost(request, response);
	}  	
	protected void doPost(HttpServletRequest request, HttpServletResponse response) 
	throws ServletException, IOException 
	{
		String excelPath = new String(request.getParameter("excelPath").getBytes("iso8859-1"),"utf-8");
		System.out.println("============解 析 EXCEL ==============="+excelPath);
//		解析excel
		boolean jiexi = true;
		ArrayList list = new ArrayList();
		FileInputStream fis = new FileInputStream(excelPath);
		HSSFWorkbook wb = new HSSFWorkbook(fis);
		HSSFSheet sheet = wb.getSheetAt(2);
		
		HSSFRow row=null;//行对像;
		HSSFCell cell=null;//列对像;
		
		int numRow = sheet.getLastRowNum()+1;
		System.out.println("一共"+(numRow-1)+"行.");
		
		ExcelBean eb = eb=new ExcelBean();
		for(int i=1;i<numRow;i++)
		{
			eb=new ExcelBean();
			row = sheet.getRow(i);
			
			cell = row.getCell((short)i);
			//  11 列
			String djbNo ="";  //许可证号
			String enterpriseName ="";//企业名称
			String address ="";//单位地址
			String issueDate ="";//发证日期
			String postcode ="";//邮政编码
			String relationPerson ="";// 联系人
			String telphone ="";//联系电话
			String applyDate ="";//申报时间
			String czLevel ="";
			String cxLevel ="";
			String csLevel ="";
			String remark = "";
			
			try
			{
				if(row.getCell((short)0)!=null && ! row.getCell((short)0).toString().equals(""))
				{
					cell=row.getCell((short)0);
					djbNo = this.chickCell(cell);
					eb.setDjbNo(djbNo);
				}
//				System.out.println("许可证号="+djbNo);
				
				if(row.getCell((short)1)!=null && ! row.getCell((short)1).toString().equals(""))
				{
					cell=row.getCell((short)1);
					enterpriseName = this.chickCell(cell);
					eb.setEnterpriseName(enterpriseName);
				}
//				System.out.println("企业名称="+enterpriseName);
				
				if(row.getCell((short)2)!=null && ! row.getCell((short)2).toString().equals(""))
				{
					cell=row.getCell((short)2);
					address = this.chickCell(cell);
					eb.setAddress(address);
				}
// 				System.out.println("单位地址="+address);
				
				if(row.getCell((short)3)!=null && ! row.getCell((short)3).toString().equals(""))
				{
					cell=row.getCell((short)3);
					issueDate = this.chickCell(cell);
					eb.setIssueDate(issueDate);
				}
// 				System.out.println("发证日期="+issueDate);
				
				if(row.getCell((short)4)!=null && ! row.getCell((short)4).toString().equals(""))
				{
					cell=row.getCell((short)4);
					postcode = this.chickCell(cell);
					eb.setPostcode(postcode);
				}
// 				System.out.println("邮政编码="+postcode);
				
				if(row.getCell((short)5)!=null && ! row.getCell((short)5).toString().equals(""))
				{
					cell=row.getCell((short)5);
					relationPerson = this.chickCell(cell);
					eb.setRelationPerson(relationPerson);
				}
// 				System.out.println("联系人="+relationPerson);
				
				if(row.getCell((short)6)!=null && ! row.getCell((short)6).toString().equals(""))
				{
					cell=row.getCell((short)6);
					telphone = this.chickCell(cell);
					eb.setTelphone(telphone);
				}
// 				System.out.println("联系电话="+telphone);
				
				if(row.getCell((short)7)!=null && ! row.getCell((short)7).toString().equals(""))
				{
					cell=row.getCell((short)7);
					applyDate = this.chickCell(cell);
					eb.setApplyDate(applyDate);
				}
// 				System.out.println("申报时间="+applyDate);
				
				if(row.getCell((short)8)!=null && ! row.getCell((short)8).toString().equals(""))
				{
					cell=row.getCell((short)8);
					czLevel = this.chickCell(cell);
					eb.setCzLevel(czLevel);
				}
// 				System.out.println("czLevel="+czLevel);
				
				if(row.getCell((short)9)!=null && ! row.getCell((short)9).toString().equals(""))
				{
					cell=row.getCell((short)9);
					cxLevel = this.chickCell(cell);
					eb.setCxLevel(cxLevel);
				}
// 				System.out.println("cxLevel="+cxLevel);
				
				if(row.getCell((short)10)!=null && ! row.getCell((short)10).toString().equals(""))
				{
					cell=row.getCell((short)10);
					csLevel = this.chickCell(cell);
					eb.setCsLevel(csLevel);
				}
// 				System.out.println("csLevel="+csLevel);
				
				if(row.getCell((short)11)!=null && ! row.getCell((short)11).toString().equals(""))
				{
					cell=row.getCell((short)11);
					remark = this.chickCell(cell);
					eb.setRemark(remark);
				}
// 				System.out.println("备注="+remark);
// 				System.out.println("********************************************************");
			}
			catch(Exception ex)
			{
				jiexi = false;
				ex.printStackTrace();
				System.out.println("第"+(i)+"行格式错误!");
			}
			list.add(eb);
		}
		
		HttpSession session = request.getSession();
		session.setAttribute("listA",list);
//		  删除 上传的 临时 文件夹、
		
 		File file = new File(excelPath);
 		file.deleteOnExit();
		
		String responseTextVar = String.valueOf(jiexi);
		response.setContentType("text/html;charset=gb2312");
		response.getWriter().write(responseTextVar);
	}   
	private  String chickCell(HSSFCell cell)
	{
//		判断是否为String型
		String all="";

		if(cell.getCellType()==cell.CELL_TYPE_STRING){
			all=cell.getStringCellValue();
		}else{
			//判断是否为数值型				
			if(cell.getCellType()==cell.CELL_TYPE_NUMERIC)
			{
				//判断是否为日期型
				if(HSSFDateUtil.isCellDateFormatted(cell))
				{
					Date date=cell.getDateCellValue();
					SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); 
					all=formatter.format(date);
				}else{//一般数值型
					double d=cell.getNumericCellValue();
					DecimalFormat df = new DecimalFormat("###########");
					all = df.format(d);
				}	
			}
		}
		return all;
	}
}
package com.suypower.djbxt.dlyw.servlet;

import java.io.FileInputStream;
import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.log4j.Logger;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import com.suypower.djbxt.electrician.business.module.electricianInfoMethod;
import com.suypower.djbxt.sysmanger.DBconnect;

import com.suypower.djbxt.dlyw.bean.*;

 public class ImportEnterpriseInfo extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {

	private static final long serialVersionUID = 1L;

	static Logger logger = Logger.getLogger(ImportEnterpriseInfo.class.getName());


	public ImportEnterpriseInfo() {
		super();
	}


	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        HttpSession session = request.getSession();
		String file=new String(request.getParameter("okf").getBytes("iso8859-1"),"gb2312").trim();
		System.out.println(file);


		ArrayList array=importXls(file);
		int i=execdb(array);

		String message="";
		if(i==0)
		{
			message= "\n<Script language=\"javaScript\"> alert('导入成功!');</Script>";
		}
		else
		{
			message= "\n<Script language=\"javaScript\"> alert('文件格式错误,导入失败!');</Script>";
		}
		session.setAttribute("ImportMessage", message);
		response.sendRedirect("importEnterpriseInfo.jsp");
	}



	public ArrayList importXls(String xlsFile)
	{
		java.text.SimpleDateFormat formatter = new java.text.SimpleDateFormat("yyyy-MM-dd");
		String sql="";
		 FileInputStream fIn=null;
		  try
		  {

			  fIn=new FileInputStream(xlsFile);
			  HSSFWorkbook readWorkBook= new HSSFWorkbook(fIn);
			  HSSFSheet readSheet=   readWorkBook.getSheetAt(0);
			// readWorkBook.getSheet("电工进网作业许可证持证人员情况表");


			  HSSFRow readRow =readSheet.getRow(0);


			//  int columns=readRow.getPhysicalNumberOfCells();
			  int rows=readSheet.getLastRowNum()+1;
			  System.out.println("rows="+rows);



			  ArrayList array=new ArrayList();
			  EnterpriseInfo enterprise=null;

			  for(int i=0;i<rows;i++)
			  {
				  enterprise=new EnterpriseInfo();

				  readRow =readSheet.getRow(i);
				  String enterpriseName="";
				  //企业名称
				  try
				  {
					  if(readRow.getCell((short)0)!=null && ! readRow.getCell((short)0).toString().equals(""))
						{
						  enterpriseName=readRow.getCell((short)0).toString();
						}
					  System.out.println("企业名称="+enterpriseName);

				  }
				 catch(Exception ex)
				 {
					 logger.error(ex.toString());
					  System.out.println("企业名称="+enterpriseName);
					 System.out.println("第"+(i)+"行,姓名格式错误!");
				 }
				  //2许可证编号
				  String djbno="";

				  if(readRow.getCell((short)4)!=null && !readRow.getCell((short)4).toString().equals(""))
					{
					  djbno=readRow.getCell((short)4).toString();
					}
				  System.out.println("许可证编号="+djbno);



				  //3容量
				  String rl="";
				  if(readRow.getCell((short)7)!=null && !readRow.getCell((short)7).toString().equals(""))
					{
					  rl=readRow.getCell((short)7).toString().trim();

					}

				  System.out.println("容量="+rl+"  ");



				  //4机组类型
				  String  jzlx="";
				  if(readRow.getCell((short)8)!=null && !readRow.getCell((short)8).toString().equals(""))
					{
					  jzlx=readRow.getCell((short)8).toString();
					}
				  System.out.println("机组类型 ="+jzlx+"  ");


				  //6城市
				  String  city="";
				   if(readRow.getCell((short)9)!=null && !readRow.getCell((short)9).toString().equals(""))
					{
					   city=readRow.getCell((short)9).toString();
					}
				 System.out.println("城市 ="+city);

				  //7发证日期

				  String fzrq="2007-11-01";
				  try
				  {
				     if(readRow.getCell((short)10)!=null&& readRow.getCell((short)10).toString()!="")
					{
				    	 fzrq = formatter.format(readRow.getCell((short)10).getDateCellValue());
				     }

				  }
			     catch(Exception err)
			    {
			 	  System.out.println("第"+(i)+"行,发证日期格式错误!");
				  System.out.println(err.toString());
			    }
			     System.out.println("发证日期 ="+fzrq);


			     //8联系人
				  String  lxr="";
				  if(readRow.getCell((short)11)!=null &&!readRow.getCell((short)11).equals(""))
					{
					  lxr=readRow.getCell((short)11).toString();
					}
				  System.out.println("联系人 ="+ lxr);

				  //9电话  2两个
				  String tmp="";
				  String  phone="";
				  String  tel="";
				  if(readRow.getCell((short)12)!=null&&!readRow.getCell((short)12).equals(""))
				  {

					  tmp=readRow.getCell((short)12).toString();
			            try
			              {
					        DecimalFormat df2 = new DecimalFormat("#");
					        phone=df2.format(new Double(tmp));
			               }
			            catch(Exception err)
			            {
			           	    if(tmp.indexOf("/")!=-1)
						  {
							  phone=tmp.substring(0,tmp.indexOf("/"));
							  tel=tmp.substring(tmp.indexOf("/")+1,tmp.length());
						  }
						  else if(tmp.indexOf("\\")!=-1)
						  {
							  phone=tmp.substring(0,tmp.indexOf("\\"));
							  tel=tmp.substring(tmp.indexOf("\\")+1,tmp.length());
						  }


						  else  if(tmp.indexOf("、")!=-1)
						  {
							  phone=tmp.substring(0,tmp.indexOf("、"));
							  tel=tmp.substring(tmp.indexOf("、")+1,tmp.length());
						  }
						  else  if(tmp.indexOf(",")!=-1)
						  {


							  phone=tmp.substring(0,tmp.indexOf(","));
							  tel=tmp.substring(tmp.indexOf(",")+1,tmp.length());
						  }

						  else  if(tmp.indexOf("-")!=-1)
							  {
								  System.out.println("区号电话="+tmp);
								  phone=tmp;
							  }
							  else if(tmp.indexOf("-")!=-1)
							  {
								  System.out.println("区号电话="+tmp);
								  phone=tmp;
							  }
							  else if(tmp.indexOf("—")!=-1)
							  {
								  System.out.println("区号电话="+tmp);
								  phone=tmp;
							  }
							  else if(tmp.indexOf(" 转")!=-1)
							  {
								  tmp=tmp.replaceAll("转","-").trim();
								  System.out.println("区号电话="+tmp);
								  phone=tmp;
							  }

							  else if(tmp.indexOf("无")!=-1)
							  {
								  phone="";
							  }
							  else if(tmp.indexOf("`")!=-1)
							  {
								  phone=tmp.substring(0,tmp.indexOf("`"));
							  }
							  else
							  {

								  phone=tmp;
							  }

						  }
				  }
				  System.out.println("联系电话="+phone);

				  //加入List
				  enterprise.setEnterpriseName(enterpriseName);
				  enterprise.setDjbno(djbno);
				  enterprise.setRl(rl);
				  enterprise.setJzlx(jzlx);
				  enterprise.setCity(city);
				  enterprise.setFzrq(fzrq);
				  enterprise.setLxr(lxr);
				  enterprise.setTel(phone);

				  array.add(enterprise);

			  }

			  return array;


		  }catch(Exception e){
			  logger.error(e.toString());
			  int count=1;
			 System.out.println(sql);
			 System.out.println("第"+count+"次进入错误!");
			 count++;

			  e.printStackTrace();
			  return null;
		  }
		  finally
			{
			  try
			  {
				  if(fIn!=null)
				  {
					  fIn.close();
				  }
			  }catch(Exception e)
			  {
				  e.printStackTrace();
			  }

			}

	}


	public int execdb(ArrayList array)
	{

		Connection connect = null;
	    DBconnect con = null;
	    try
	    {
			con = new DBconnect();
			connect = con.getConection();//服务器4导入数据
		    Statement stmt = connect.createStatement();

		    Statement updateStmt = connect.createStatement();

		    //获取ArrayList值
		    EnterpriseInfo enterprise=null;
			  String enterpriseName="";
			  String  djbno="";
			  String rl="";
			  String jzlx="";
			  String city="";
			  String fzrq="";
			  String lxr="";
			  String tel="";


			String sql1="";
			String sqlExist="";
		    for(int i=0;i<array.size();i++)
		    {
		    	enterprise=(EnterpriseInfo)array.get(i);

		    	enterpriseName=enterprise.getEnterpriseName();
		    	djbno=enterprise.getDjbno();
				rl=enterprise.getRl();
				jzlx=enterprise.getJzlx();
				city=enterprise.getCity();
				fzrq=enterprise.getFzrq();
				lxr=enterprise.getLxr();
				tel=enterprise.getTel();


				sqlExist="select * from  TB_dlyw_enterprise where enterpriseName='"+enterpriseName+"'";

			  	 ResultSet res = stmt.executeQuery(sqlExist);


			  	 String id="";
			  	 if(res.next())
			  	 {
			  		 id=res.getString("id");

			  		 sql1 = "update  TB_dlyw_enterprise set content='"+rl+"',jzlx='"+jzlx+"',city='"+city+
			  		 		"',linkman='"+lxr+"',tel='"+tel+"',djbno='"+djbno+"',xk_date='"+fzrq+"' where id="+id;

				   	 System.out.println("update="+sql1);


			  	 }
		   	    else
				{
			   	  sql1 = "insert into tb_dlyw_enterprise(enterprisename,content,jzlx,city,linkman,tel,djbno,xk_date) values('"+enterpriseName+"','"+rl
			   	  		+"','"+jzlx+"','"+city+"','"+lxr+"','"+tel+"','"+djbno+"','"+fzrq+"')";
			      System.out.println("insert="+sql1);


				}

			  updateStmt.execute(sql1);

		    }
		    return 0;


	    }catch(Exception ex)
	    {
	    	ex.printStackTrace();
	    	return 1;
	    }
	    finally
		{
			try
			{
				if (connect != null)
				{
					connect.close();
				}
			} catch (Exception e)
			{
				logger.error(e.toString());
				e.printStackTrace();
			}

		}

	}

	//日期格式转换
	public String getString(String date)
	{
		String s="";
		String tmp="";

	  try
	  {

		if(date.indexOf("月")!=-1)
		{
			s=date.substring(date.indexOf("-")+1,date.indexOf("月"));

			if(s.equals("一"))
			{
				tmp="1";
			}
			else if(s.equals("二"))
			{
				tmp="2";
			}
			else if(s.equals("三"))
			{
				tmp="3";
			}

			else if(s.equals("四"))
			{
				tmp="4";
			}else if(s.equals("五"))
			{
				tmp="5";
			}
			else if(s.equals("六"))
			{
				tmp="6";
			}

			else if(s.equals("七"))
			{
				tmp="7";
			}
			else if(s.equals("八"))
			{
				tmp="8";
			}
			else if(s.equals("九"))
			{
				tmp="9";
			}

			else if(s.equals("十"))
			{
				tmp="10";
			}
			else if(s.equals("十一"))
			{
				tmp="11";
			}else if(s.equals("十二"))
			{
				tmp="12";
			}

			s=date.substring(date.indexOf("月")+2,date.length())+"-"+ tmp+"-"+date.substring(0,date.indexOf("-"));

		}

	  }
	  catch(Exception ex)
	  {
		  logger.error(ex.toString());
		  ex.printStackTrace();
	  }
		return s ;
	}
	public boolean isNumeric(String str)
	{
    	Pattern pattern = Pattern.compile("[0-9]");
	    Matcher isNum = pattern.matcher(str);
		if( !isNum.matches() )
		{
		   return false;
		}
	return true;
	}

 }

分享到:
评论

相关推荐

    java上传excel并且解析入库

    在Java开发中,上传并解析Excel文件是一种常见的需求,特别是在数据处理、报表导入或系统集成等场景。本篇文章将深入探讨如何实现这个功能,主要涉及的技术包括文件上传、Excel解析以及数据库操作。 首先,我们需要...

    java按行读取大文件并解析入库

    5. **解析并入库** 对于每行数据,我们可以根据业务需求进行解析。这可能涉及到JSON、CSV或其他格式的解析。例如,如果数据是CSV格式,可以使用`java.util.StringTokenizer`或`java.util.Scanner`进行解析。 ```...

    springboot导入Excel文件并入库

    2. **解析Excel文件**:解析Excel文件通常需要借助第三方库,如Apache POI或OpenCSV。Apache POI是Java中处理Microsoft Office格式文件的库,非常适合处理Excel。首先,你需要在`pom.xml`中添加Apache POI依赖。然后...

    Excel解析工具POI.jar

    《Excel解析工具POI.jar详解》 在信息技术领域,数据处理是不可或缺的一部分,尤其是在大数据时代,Excel作为广泛使用的表格处理软件,其数据处理能力受到广大用户的青睐。然而,当面对大量Excel数据时,传统的手动...

    jsp上传多个excel文件,解析入库,批量导出excel文件

    jsp页面可以批量上传多个excel文件,后台解析入库。并将信息展现在jsp页面表格里,勾选多个数据,可以导出excel文件。很方便,很实用!(每一行数据,就相当于表格里的某张表的一条信息,后期只要改下表结构,数据库...

    出入库管理系统excel表格模板.zip

    以下是对"出入库管理系统excel表格模板"的详细解析: 1. **基本信息表**:通常,出入库管理系统的Excel模板会包含一个基本信息表,用于记录商品的基本信息,如商品编码、名称、规格、单位、供应商信息、库存初始...

    使用POI解析excel文件并写入数据库

    本篇文章将详细讲解如何使用Apache POI解析Excel文件,并将数据写入数据库。 首先,我们需要了解Apache POI的基本概念。POI提供了一个Java API,使得开发者可以在不依赖Microsoft Office的情况下,处理Excel文件。...

    excel入库相关

    在Excel入库的场景中,jxl库是关键工具,帮助解析Excel文件并准备数据进行数据库操作。 首先,我们需要理解如何使用jxl库来读取Excel文件。这通常涉及以下步骤: 1. 加载Excel文件:使用WorkbookFactory类的create...

    Java解析Excel文件并把数据存入数据库

    Java解析Excel文件并把数据存入数据库 本篇文章主要介绍了Java解析Excel文件并把数据存入数据库的方法,涵盖了上传Excel文件、解析Excel文件、将数据存入数据库等多个方面的知识点。 一、上传Excel文件 在上传...

    springboot 实现后端接口操作Excel的导出、批量导入功能

    2. **解析Excel文件**:在后端,你需要接收上传的文件,读取并解析其内容。使用`MultipartFile`对象接收文件,然后使用POI库的`InputStream`读取数据。 ```java @PostMapping("/import") public String importExcel...

    Excel解析第一版本

    对于Java开发者来说,能够解析Excel文件是一项重要的技能。"Excel解析第一版本"的主题聚焦于如何使用Java来读取、操作和解析Excel文件。下面我们将深入探讨这个话题。 首先,Java中用于解析Excel文件的主要库有...

    java版excel解析,并上传至mysql数据库

    首先,让我们详细探讨Java解析Excel的步骤: 1. **引入库**:为了处理Excel文件,我们通常会用到Apache POI库。Apache POI是Apache软件基金会的一个项目,提供了API来读写Microsoft Office格式的文件,包括Excel。...

    apache poi解析excel数据的jar包

    解析excel数据入库的三个jar包,org.apache.poi.hssf.usermodel.HSSFCell; org.apache.poi.hssf.usermodel.HSSFRow; org.apache.poi.hssf.usermodel.HSSFSheet; org.apache.poi.hssf.usermodel.HSSFWorkbook;

    读取execl文件,并写入 Oracle

    本教程将详述如何使用Delphi编程语言结合Excel文件来读取特定列的信息,并将其高效地写入Oracle数据库。首先,我们需要理解Delphi、Excel文件处理以及Oracle数据库的基本概念。 Delphi是一种基于Object Pascal的...

    Excel模板出入库登记表.zip

    本文将详细解析“Excel模板出入库登记表”,帮助你更有效地进行库存管理。 一、模板结构与功能 “出入库登记表”通常包含以下几个主要部分: 1. **基本信息区**:包括日期、入库单号/出库单号、供应商/客户信息等...

    将excel实体表格生成为JavaBean对象

    通过读取解析固定模板中的内容,生成JavaBean类。 除了生成Bean ,也可以生成其他类,可自行扩展。 这种场景比较局限,项目开发中用到的不多,如果定义类有几十、表字段很多,同时应对项目初期,表结构表更需求较多...

    JFinal HSSFWorkbook导入Excel 并解析内容

    最后,将解析出的数据逐条调用`saveData`方法,完成数据的入库。 以上就是使用JFinal结合HSSFWorkbook导入Excel并解析内容的整个流程。实际应用中可能还需要处理更复杂的情况,例如处理日期格式、错误检查、批处理...

    excel模板高级进销存管理系统出入库支出收入明细库存报表 领料表格打印.zip

    《Excel模板高级进销存管理系统的深度解析与应用》 在现代企业管理中,进销存管理系统扮演着至关重要的角色,它能帮助企业精确掌握库存、销售和采购等关键环节的数据,从而实现高效运营。本篇文章将深入探讨一款...

    EXCEL常用模板-财务模板-采购类-仓库出入库记录表.zip

    在Excel中,仓库出入库记录表是管理库存和采购流程的关键工具。这个模板适用于各种规模的企业,特别是那些需要跟踪物资流动的小型至中型企业。以下是对这个模板的详细解析: 1. **基本信息区域**:模板通常会包含一...

    PHP Excel Parser Pro v4.0

    ### 解析Excel文件的原理 Excel文件本质上是二进制格式(.xls)或XML格式(.xlsx)。PHP Excel Parser Pro v4.0 应用特定的解析算法来解读这些文件。对于老版本的二进制文件,它会解析文件结构,识别工作表、单元格...

Global site tag (gtag.js) - Google Analytics