- 浏览: 108894 次
- 性别:
- 来自: 厦门
-
文章分类
最新评论
-
qiqibaba1990:
JAVA与JS的数据交互 -
月氏城下:
为什么是5个,不是9个吗?
JSP五大内置对象 -
mida:
有点文字时不时更好了。
JAVA与JS的数据交互 -
pxx199248:
收藏楼,不错
常用JS驗證
/** * 導入文件(excel) * @author dingyuanwei * @param path 路徑+檔名 * @param line 從第幾欄開始(写出的Excel) 从0开始算起 * @param rowLen 到第几列结束 从1开始算起 * @param atRow 从第几行开始写(写入的Excel) 从0开始算起 * @return list 返回一个包含行的LIST对象记录 * @return inputStream 将excel进行流化 * @throws Exception * 解析Excel文件 */ public static List<Object> importData(InputStream inputStream,int atRow, int line, int rowLen) throws Exception{ List<Object> tmpList = new ArrayList<Object>(); POIFSFileSystem pfs = new POIFSFileSystem(inputStream); HSSFWorkbook wb = new HSSFWorkbook(pfs); HSSFSheet sheet = wb.getSheetAt(0);//第0索引文件解析 HSSFRow row = null; try{ int totalRow = sheet.getLastRowNum(); //excel資料行數 if(totalRow>0){ //判斷excel是否為空 for(int i = atRow ; i <=totalRow; i++){ List<Object> rowList = new ArrayList<Object>(); row = sheet.getRow(i); if(row!=null){ //判断行是否为空 for(int j = line; j < rowLen; j++){ HSSFCell cell = row.getCell((short) j); if(cell == null){ //判断列是否为空 rowList.add(""); }else{ int ctype = cell.getCellType(); switch(ctype){ // 處理string部份 case HSSFCell.CELL_TYPE_BLANK: rowList.add(""); break; case HSSFCell.CELL_TYPE_STRING: rowList.add(cell.getRichStringCellValue().getString().trim()); break; //處理number部份 case HSSFCell.CELL_TYPE_NUMERIC: if (HSSFDateUtil.isCellDateFormatted(cell)) { // 是否為日期型 System.out.print( cell.getDateCellValue()); //須轉date格式 rowList.add(cell.getDateCellValue()); }else{ double tmpdouble = cell.getNumericCellValue(); if(tmpdouble - (int)tmpdouble < Double.MIN_VALUE) { //int rowList.add(Integer.toString((int)tmpdouble)); }else{ //double rowList.add(Double.toString(cell.getNumericCellValue())); } } break; //處理boolean部份 case HSSFCell.CELL_TYPE_BOOLEAN: rowList.add(cell.getBooleanCellValue()); break; } } } tmpList.add(rowList);//加入每一行,行中又包含单元格字段 } } } }catch(Exception e){ e.printStackTrace(); throw e; } return tmpList;//所有的行 } public static void main(String[] args) throws FileNotFoundException, Exception { List a = importData(new FileInputStream("E:\\项目需求\\華文網開發需求\\example.xls"),1,0,5); List parseData; List resultResult = new ArrayList(); List successData = new ArrayList(); int s = 0; int f = 0; try { parseData = ExcelUtil .importData( new FileInputStream("E:\\项目需求\\華文網開發需求\\example.xls"), 1, 0, 5); for (int i = 0; i < parseData.size(); i++) { List tempResult = (List) parseData.get(i); boolean tfFalse = false;//標志成功或失敗 Pattern p = Pattern.compile("[1-9]\\d*");//是否是正整數表達式 TeachreSource ts = new TeachreSource(); for (int j = 0; j < tempResult.size(); j++) { String temp = ""; switch (j) { case 0: temp = tempResult.get(0).toString(); // *教學資源類別ID if("".equals(temp)){ tfFalse = false; }else if(!p.matcher(temp.trim()).matches()){ tfFalse = false;//是否是正整數 }else{ tfFalse = true; } break; case 1: //temp = tempResult.get(1).toString(); //教學資源類別 tfFalse = true; break; case 2: temp = tempResult.get(2).toString();//*商品名稱 if("".equals(temp)){ tfFalse = false; }else{ tfFalse = true; } break; case 3: temp = tempResult.get(3).toString();//冊次 if("".equals(temp)){ tfFalse = true; }else if(!p.matcher(temp.trim()).matches() || Integer.parseInt(temp) > 99){ tfFalse = false; }else{ tfFalse = true; } break; case 4: temp = tempResult.get(4).toString();//*路徑 File file1=new File(temp.trim()); if(file1.isFile()){ tfFalse = true; }else{ tfFalse = false; } break; } if(!tfFalse){ break;//中斷循環 } } if(tfFalse){ successData.add(ts);//加入的數據 s ++; }else{ f ++; } } resultResult.add(s); resultResult.add(f); } catch (Exception e) { e.printStackTrace(); } System.out.println(a); }
package com.tkb.post.action.admin; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; import java.util.ArrayList; import java.util.Iterator; import java.util.List; 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 org.apache.poi.poifs.filesystem.POIFSFileSystem; import com.sun.org.apache.bcel.internal.generic.Select; public class importExcel { public static List<Object> importData(InputStream inputStream,int atRow, int line, int rowLen) throws Exception{ List<Object> tmpList = new ArrayList<Object>(); POIFSFileSystem pfs = new POIFSFileSystem(inputStream); HSSFWorkbook wb = new HSSFWorkbook(pfs); HSSFSheet sheet = wb.getSheetAt(2);//第2索引文件解析 EB_VIEW_ORG HSSFRow row = null; try{ int totalRow = sheet.getLastRowNum(); //excel資料行數 if(totalRow>0){ //判斷excel是否為空 for(int i = atRow ; i <=totalRow; i++){ List<Object> rowList = new ArrayList<Object>(); row = sheet.getRow(i); if(row!=null){ //判断行是否为空 for(int j = line; j < rowLen; j++){ HSSFCell cell = row.getCell((short) j); if(cell == null){ //判断列是否为空 rowList.add(""); }else{ int ctype = cell.getCellType(); switch(ctype){ // 處理string部份 case HSSFCell.CELL_TYPE_BLANK: rowList.add(""); break; case HSSFCell.CELL_TYPE_STRING: rowList.add(cell.getRichStringCellValue().getString().trim()); break; //處理number部份 case HSSFCell.CELL_TYPE_NUMERIC: if (HSSFDateUtil.isCellDateFormatted(cell)) { // 是否為日期型 System.out.print( cell.getDateCellValue()); //須轉date格式 rowList.add(cell.getDateCellValue()); }else{ double tmpdouble = cell.getNumericCellValue(); if(tmpdouble - (int)tmpdouble < Double.MIN_VALUE) { //int rowList.add(Integer.toString((int)tmpdouble)); }else{ //double rowList.add(Double.toString(cell.getNumericCellValue())); } } break; //處理boolean部份 case HSSFCell.CELL_TYPE_BOOLEAN: rowList.add(cell.getBooleanCellValue()); break; } } } tmpList.add(rowList);//加入每一行,行中又包含单元格字段 } } } }catch(Exception e){ e.printStackTrace(); throw e; } return tmpList;//所有的行 } /** * @param args * @throws Exception * @throws FileNotFoundException */ public static void main(String[] args) throws FileNotFoundException, Exception { String sql = ""; List a = importData(new FileInputStream("D:\\1.xls"),1,0,5); for(int i=0;i<a.size();i++){ List b = (List)a.get(i); sql += "insert into eb_view_org(nodeID,parentNodeId,supervisorUserPK,twTitle,twTitlePath,nodePath,isExist) values("; for (int j = 0; j < b.size(); j++) { sql += "'"+ b.get(j)+"'"; } sql +=");"; } System.out.println(sql); } }
发表评论
-
java.lang.OutOfMemoryError: Java heap space 解决方法
2012-09-25 14:40 855java.lang.OutOfMemoryError: ... -
单例模式
2012-09-13 17:26 757概念: java中单例模 ... -
设计模式
2012-09-13 17:25 723设计模式主要分三个类型:创建型、结构型和行为型。 其中创建型有 ... -
小数点
2012-08-27 16:46 796保留两位小数{方法一:{ double c=3.154 ... -
计时器2
2012-08-21 13:48 848Timer类是用来执行 ... -
ngnix.conf配置
2012-07-18 09:20 811# 开多少进程 worker_processes 2; ... -
多维数组
2012-07-12 10:32 704java语言中,数组是一种 ... -
取得下一年时间
2012-07-05 16:16 725Calendar cal = Calendar.get ... -
JSP五大内置对象
2012-07-04 16:00 1301一、Request对象方法 ... -
反射机制学习
2012-05-31 10:50 642JAVA语言中的反射机制: 在Java 运行时 环 ... -
class生成jar包
2012-05-23 16:10 853进入dos操作符窗口 cd进入要打成jar包的class文件 ... -
读取src下properties配置
2012-05-09 10:42 702try { String path = getClas ... -
ibatis与hibernate的区别
2012-04-25 09:14 739Hibernate简介Hibernate是一个开放源代码的对象 ... -
iBATIS教程之快速入门浅析
2012-04-24 17:01 668iBATIS教程要从iBATIS的概 ... -
tomcat外部启动项目
2012-04-13 15:12 864server.xml <Context pa ... -
防止跨域提交表单
2012-04-11 14:47 821public static boolean validate( ... -
Excel操作 >> 导出
2012-04-09 15:25 1141ExcelBean.java public class Ex ... -
計時器
2012-03-31 17:28 737所有类型的 Java 应用程序一般都需要计划重复执行的任务。企 ... -
根据url读取数据并解析(json)
2012-03-30 16:23 1122/** * @param args * @thro ... -
取URL对应的资源
2012-03-30 15:57 746认识IP、认识URL是进行网络编程的第一步。java.net. ...
相关推荐
java导入导出excel操作
jsp 使用poi导入 excel的例子,参考网址 :https://www.cnblogs.com/bobodeboke/p/4959103.html
C#中,winform中dataGridView导入EXCLE数据,或从dataGridView中导出Excel表格。可以指定导入路径或导出路径。
SpringBoot+AntDesignVue 实现 Excel 导入功能 在本篇文章中,我们将介绍如何使用 SpringBoot 和 AntDesignVue 实现 Excel 导入功能。这个功能主要是使用 Ant Design Vue 中的 upload 组件来实现导入 excel 文件的...
选择是否立即运行导入操作、保存为调度文件、记录数据导入日志等操作。 10. 检查导入过程是否出现错误和警告 检查导入过程是否出现错误和警告,并对错误进行处理。 Sqlyog 导入数据的注意事项 在使用 Sqlyog ...
NPOI和EPPlus实现.NET的Excel导入导出操作(类库+操作类+实例) NPOI实现.NET的Excel导入导出功能,EPPlus实现Excel的导出单个和多个Worksheet操作;可兼容各种版本的 Office 和 WPF 文件的打开,简单实用,里面有...
这种操作可以帮助开发者快速地将 Excel 文件中的数据导入到数据库中,以便进行后续的数据处理和分析。 描述解释 PLSQL Developer 是一个功能强大且流行的数据库管理工具,提供了各种功能来管理和维护 Oracle ...
讲解在使用ERWIN进行数据建模时如何使用EXCEL模板导入数据模型
内容概要:本资源介绍了如何从利用Npoi库操作Excel,如相关读取单元格、行,介绍了如何对单元格数据格式进行操作,并分享了如何将Datatable数据导入Mysql数据库,方便项目管理。 阅读建议:此资源以如何读取Excel...
Java实现Excel导入导出简介 Java实现Excel导入导出是通过...Java实现Excel导入导出需要掌握Excel文件的结构、Java的文件操作、Java的数据结构和算法等技术。通过这些技术,可以实现对Excel文件的高效读写和数据处理。
Delphi报表的Excel导入导出操作实例。
Excel导入导出GridControl特别简单版,操作简单明了,我现在用的就是这个GridControl的导入导出,该导入导出是根据DevExpress里面的GridControl工具和SaveFileDialog工具来使用的,特别简单方便,有需要的朋友可以...
万能的Excel导入导出工具. 支持从List<Map>中导出. ...用到了适配器模式,支持任意类型的数据导入导出,用户还可以自己编写适配器操作自定义的数据类型! 示例参照:https://github.com/hyberbin/J-Excel
在.net与EXCEL数据的导入导出,在WINFORM中导入EXCEL数据。 .net 导出excel 代码 .net 环境下操作excel .NET如何生成EXCEL文件 .NET Excel常用 对象及功能速查表 A.1 ActionsPane对象 作 用:表示Office程序中的...
VB6操作Excel导入到SQL2000数据库,Excel必须保存成2003的格式
java导入导出excel操作(jxl)
Excelvc—VC++ 灵活操作Excel导入导出数据,不但可以生成Excel文件,还可以从Excel文件导入数据到VC的ListCtrl控件中
CSV文件导入DataTable和DataTable导出到Csv文件等操作 2.导出Excel 操作类 DataToExcel 从“Excel导出数据的帮助类 ExcelHelper 导出到文件,导出一部分集合,从DataTable中操作等 ExportExcel 主要功能如下1...
Visual C++源代码 193 如何向Excel文件导入图像文件Visual C++源代码 193 如何向Excel文件导入图像文件Visual C++源代码 193 如何向Excel文件导入图像文件Visual C++源代码 193 如何向Excel文件导入图像文件Visual ...
poi操作excel工具类,excel导入,excel导出各种格式,如List,Object>>,List<Bean>格式,使用方法见:https://blog.csdn.net/lingyancangqiong中的excel工具类