1. 用java处理excel数据
在导入前先去数据库一次性的取出所有的数据放入集合A(这个的所有根据情况来,不一定是必须要全部数据),然后将excel内的所有的序号和A中的主键去比较,A中有的就表示已经存在不插入,而A中没有的则表示数据库中不存在则需要导入
2. java操作xlsx
需要导入 包rJava和xlsx
运用函数write.xlsx:格式:write.xlsx(x, file, sheetName="Sheet1",col.names=TRUE, row.names=TRUE, append=FALSE, showNA=TRUE)
x为数据集,file为文件名(导出到默认文件夹,通过过getwd()查询默认目录,setwd()修改目录)
还可以运用函数write.cxv:格式:write.csv(x, file)
3. java xls
可以使用Excel库来处理,比如spire.XLS for Java对Excel的操作功能支持得比较全面,创建、读取、编辑、转换和打印 Excel 工作表,加密或解密 Excel 工作表等这些功能都是支持的,网上有很多文章写了具体的功能实现方法,可以作为参考来操作Excel文档。
4. java出力excel
代码如下: import java.io.*; import jxl.*; import jxl.write.*; public class CreateXLS { public static void main(String args[]) { try { //打开文件 WritableWorkbook book= Workbook.createWorkbook(new File("测试.xls")); //生成名为“第一页”的工作表,参数0表示这是第一页 WritableSheet sheet=book.createSheet("第一页",0); //在Label对象的构造子中指名单元格位置是第一列第一行(0,0) //以及单元格内容为test Label label=new Label(0,0,"test"); //将定义好的单元格添加到工作表中 sheet.addCell(label); /*生成一个保存数字的单元格 必须使用Number的完整包路径,否则有语法歧义 单元格位置是第二列,第一行,值为789.123*/
jxl.write.Number
number = new jxl.write.Number(1,0,789.123); sheet.addCell(number); //写入数据并关闭文件 book.write(); book.close(); }catch(Exception e) { System.out.println(e); } } }5. java@excel
百度搜索圈T社区 免费行业视频教程www.aiquanti.com
package com.asima;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
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;
/**
*
* @author asima
* @data 2006-10-18
*/
public class XlsToAccess
{
HSSFSheet globalSheet = null;
/*读取一个指定单元格内容*/
public String readCellValue(String pos)
{
int xpos;
short ypos;
int cellType; /*取得此单元格的类型 0-Numeric,1-String,3-null*/
String result; /*返回取得的单元格的值*/
ypos = (short) (pos.toUpperCase().charAt(0) - 65);
xpos = Integer.parseInt(pos.substring(1, pos.length())) - 1;
HSSFRow row = null; /* 定义excel中的行 */
HSSFCell cell = null; /* 定义excel中的单元格 */
/* 根据xPos和yPos取得单元格 */
row = globalSheet.getRow(xpos);
cell = row.getCell(ypos);
/** **************此处如果是空需要修改********************************** */
cellType = cell.getCellType();
switch (cellType)
{
case 0: /* 0-Numeric */
result = String.valueOf(cell.getNumericCellValue());
break;
case 1: /* 1-String */
result = cell.getStringCellValue();
break;
case 3: /* 3-null */
result = "";
break;
default:
result = "";
break;
}
return result;
}
/*读取excel文件并把内容插入到access表中*/
public void insertIntoTable() throws Exception
{
// 创建对Excel工作簿文件的引用
HSSFWorkbook workbook =
new HSSFWorkbook(new FileInputStream("D:/temp/test.xls"));
// 获得一个sheet
globalSheet = workbook.getSheetAt(0);
String value1 = readCellValue("c1");
String value2 = readCellValue("c2");
String value3 = readCellValue("c3");
String value4 = readCellValue("c4");
System.out.println(value1);
System.out.println(value2);
/* 插入数据库 */
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:asima";
Connection conn = DriverManager.getConnection(url);
PreparedStatement stmt =
conn.prepareStatement("insert into custom values(?,?,?,?)");
// 定义查询的SQL语句
stmt.setString(1, value1);
stmt.setString(2, value2);
stmt.setString(3, value3);
stmt.setString(4, value4);
stmt.executeUpdate
6. java如何操作excel
方法一:NPOI
NPOI 是 POI 项目的 .NET 版本。POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。
使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写。
方法二:使用COM组件。
缺点:
只能在安装excel 2003时才可以。
优点:(特殊情况下使用)
使用于excel打开后需要点击“保存”才能用程序读取的情况。
方法三:使用office 驱动。
优点:
此方法最简单,也最普遍。只要安装office就可以使用!
- 相关评论
- 我要评论
-