java实现EXCEL数据导入到数据库中的格式问题的解决

之前作为项目甲方,加之java接触不多,在java web开发方面都是打下手的份。

对于EXCEL数据导入到数据库这个问题一直老是出现格式原因而导入失败也是未免惆怅,开发团队也是只说回去检查一下格式。

但是,每次导入的时候还会因为格式问题而惴惴不安,最近把代码拿来研究了一下,网上查了一下。

原来是从cell里取出数据后没有做格式匹配直接赋值导致的。因此,在取出数据写入数据库前做一下格式匹配就好了。

SO FRUSTRATED BY THE PREVIOUS IGNORANCE!

 1 //把EXCEL Cell原有数据转换成String类型
 2     private String getCellString(Cell cell) {
 3         String cellSring="";
 4         switch (cell.getCellType()) {
 5         case HSSFCell.CELL_TYPE_STRING: // 字符串
 6             cellSring = cell.getStringCellValue();
 7             break;
 8         case HSSFCell.CELL_TYPE_NUMERIC: // 数字
 9             cellSring=String.valueOf(cell.getNumericCellValue());
10             break;
11         case HSSFCell.CELL_TYPE_BOOLEAN: // Boolean
12             cellSring=String.valueOf(cell.getBooleanCellValue());
13             break;
14         case HSSFCell.CELL_TYPE_FORMULA: // 公式
15             cellSring=String.valueOf(cell.getCellFormula());
16             break;
17         case HSSFCell.CELL_TYPE_BLANK: // 空值
18             cellSring="";
19             break;
20         case HSSFCell.CELL_TYPE_ERROR: // 故障
21             cellSring="";
22             break;
23         default:
24             cellSring="ERROR";
25             break;
26       }
27         return cellSring;
28     }

当然需要import POI的包:

import org.apache.poi.hssf.usermodel.HSSFCell;

时间: 2024-12-20 01:08:11

java实现EXCEL数据导入到数据库中的格式问题的解决的相关文章

Java版将EXCEL表数据导入到数据库中

1.采用第三方控件JXL实现 try { //实例化一个工作簿对象 Workbook workBook=Workbook.getWorkbook(new File("F://qzlx.xls")); //获取该工作表中的第一个工作表 Sheet sheet=workBook.getSheet(0); //获取该工作表的行数,以供下面循环使用 int rowSize=sheet.getRows(); for(int i=0;i<rowSize;i++) { //编号 String

将Excel数据导入mysql数据库的几种方法

将Excel数据导入mysql数据库的几种方法 “我的面试感悟”有奖征文大赛结果揭晓! 前几天需要将Excel表格中的数据导入到mysql数据库中,在网上查了半天,研究了半天,总结出以下几种方法,下面和大家分享一下: 一.用java来将Excel表格中的数据转到mysql中 这是我们用的第一种方法,就是在java找你感谢个类,然后这个类会将Excel表格中的数据存储到内存里,然后再从内存中读出来插入到数据库中,但是要 注意了,这里是存储到String[ ]数组里面,所以取出来的数据也是Strin

excel数据导入导出数据库

第一种方法: 先把Excel另存为.csv格式文件,如test.csv,再编写一个insert.ctl 用sqlldr进行导入! insert.ctl内容如下: load data          --1.控制文件标识 infile ‘my.csv‘          --2.要输入的数据文件名为my.csv append into table "tbl_test"   --3.向表table_name中追加记录 fields terminated by ‘,‘          

将csv和txt 数据导入到数据库中

将文本数据导入到数据库中,最简单的选择是:Excel使用OpenSet,csv和txt 使用bulk insert来实现 1,使用OpenRowSet将Excel导入到数据库中 参考<OpenRowSet 用法> 2,使用bulk insert 将txt数据导入到数据库中,文本数据使用Tab分割Column,使用换行符分割row. --create staging table create table dbo.txt_staging ( col1 nvarchar(255), col2 nva

利用TOAD实现把EXCEL数据导入oracle数据库

利用TOAD实现把EXCEL数据导入oracle数据库 工具:   Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然后Database->Import->Table Data打开了导入窗口,如下图   选择一个数据库表,点击Show Data按钮,可以显示表中的内容 其中schema 就是这张表的所属用户 Object type 就是 table Object name 就是表的名称 Commit mode 

代码执行批量Excel数据导入Oracle数据库

由于基于Oracle数据库上做开发,因此常常会需要把大量的Excel数据导入到Oracle数据库中,其实如果从事SqlServer数据库的开发,那么思路也是一样的,本文主要介绍如何导入Excel数据进入Oracle数据库的内容. 方法一: 1.准备数据:在excel中构造出需要的数据 2.将excel中的数据另存为文本文件(有制表符分隔的) 3.将新保存到文本文件中的数据导入到pl*sql中 在pl*sql中选择tools--text importer,在出现的窗口中选择Data from Te

数据从Excel数据导入到数据库的excel操作控件Spire.XLS for .NET

Spire.XLS for .NET控件是e-iceblue公司开发的一款支持对所有Excel格式类型文件进行操作的.NET 控件.它适用于任何类型的应用程序比如ASP.NET Web应用程序或者Windows桌面应用程序.Spire.XLS for .NET允许软件开发人员创建和管理Excel,而不需要安装Microsoft Excel或者Microsoft Office Excel.Spire.XLS for .NET和微软公司无隶属关系,也没有授权,赞助关系.相比Microsoft,Spi

关于Excel文件导入到Sqlserver2008中出现截断错误的解决办法

出现错误的可能原因: 1.数据库字段Varchar长度不够: 2.不能用Text类型: 3.数据中可能存在换行符: 4.数据项文本过长,超过4000: 5.前8行的最大长度不够大,后面有超过的. 解决办法: 1.修改Varchar长度为足够长: 2.替换掉换行符(可手工输入一个换行符,复制到替换文本框中,Office中可按住Alt键,从小键盘输入10,再松开Alt键): 3.第一行中记录设足够长,导入后再替换: 4.把Excel文件存为2007格式,可解决导入后很多数据项为NULL的问题: 5.

把excel中的数据导入到数据库中的通用方法

方法/步骤 对于把大量数据存放到数据库中,最好是用图形化数据库管理工具,可是如果没有了工具,只能执行命令的话这会是很费时间的事.那我们只能对数据进行组合,把数据组成insert语句然后在命令行中批量直行即可.   我们对下面数据进行组合,这用到excel中的一个功能. 在excel中有个fx的输入框,在这里把组好的字符串填上去就好了. 注:字符串1 & A2 &字符串2 & ... A2可以直接输入,也可以用鼠标点对应的单元格.   每个字符串之间用 & 符号进行连接.下面