java录excel表单(java导入excel表格

网友投稿 510 2023-02-05

本篇文章给大家谈谈java录excel表单,以及java导入excel表格对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享java录excel表单的知识,其中也会对java导入excel表格进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

请教有谁用java在excel中有取过表单对象的经验

<pre t="code" l="java"package myexceltest;
import jxl.*;
import java.io.*;
import jxl.write.*;
/**
* <pjava读取Excel表格,拷贝、更新Excel工作薄 </p
* <pDescription: Java开发人员可以读取Excel文件的内容,更新Excel工作薄,开发人员
* 也可以用程序生成新的Excel表格,不过我觉得在我们工作中几乎没有这方面需求,我
* 就不再列出来了,如果有哪位同事需要的话,我再把程序写出来
* </p
* <pCopyright: Copyright (c) KongZhong Corparation 2005</p
* <p程序开发环境为jb9</p
* @author 张丽鹏
* @version 1.0
*/
public class Test1 {
public static void main(String[] args) {
jxl.Workbook rwb = null;
try{
//构建Workbook对象, 只读Workbook对象
//直接从本地文件创建Workbook
//从输入流创建Workbook
InputStream is = new FileInputStream("D:/jb9Test/MyExcelTest/Book1.xls");
rwb = Workbook.getWorkbook(is);
//Sheet(术语:工作表)就是Excel表格左下角的Sheet1,Sheet2,Sheet3但在程序中
//Sheet的下标是从0开始
//获取第一张Sheet表
Sheet rs = rwb.getSheet(0);
//获取Sheet表中所包含的总列数
int rsColumns = rs.getColumns();
//获取Sheet表中所包含的总行数
int rsRows = rs.getRows();
//获取指定单元格的对象引用
for(int i=0;i<rsRows;i++){
for(int j=0;j<rsColumns;j++){
Cell cell = rs.getCell(j,i);
System.out.print(cell.getContents()+" ");
}
System.out.println();
}
//利用已经创建的Excel工作薄创建新的可写入的Excel工作薄
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File("D:/jb9Test/MyExcelTest/Book2.xls"),rwb);
//读取第一张工作表
jxl.write.WritableSheet ws = wwb.getSheet(0);
//获得第一个单元格对象
jxl.write.WritableCell wc = ws.getWritableCell(0, 0);
//判断单元格的类型, 做出相应的转化
if (wc.getType() == CellType.LABEL) {
Label l = (Label) wc;
l.setString("The value has been modified.");
}
//写入Excel对象
wwb.write();
wwb.close();
}catch(Exception e){
e.printStackTrace();
}
finally{
//操作完成时,关闭对象,释放占用的内存空间
rwb.close();
}
}
}

java能做出excel表格吗

如果是要做类似excel的软件,java中可以使用Swing或SWT,比如永中Office就是java写的;
如果你要用java做excel的文件(*.xls或*.xlsx),可用POI或JXL,POI支持excel03和excel07格式,JXL适合处理大数据表,但只支持excel03;

java 如何写excel

public static void main(String[] args) throws IOException {
//创建工作簿对象
HSSFWorkbook wb=new HSSFWorkbook();
//创建工作表对象
HSSFSheet sheet=wb.createSheet("java录excel表单我的工作表");
//创建绘图对象
HSSFPatriarch p=sheet.createDrawingPatriarch();
//创建单元格对象,批注插入到4行,1列,B5单元格
HSSFCell cell=sheet.createRow(4).createCell(1);
//插入单元格内容
cell.setCellValue(new HSSFRichTextString("批注"));
//获取批注对象
//(int dx1, int dy1, int dx2, int dy2, short col1, int row1, short col2, int row2)
//前四个参数是坐标点,后四个参数是编辑和显示批注时的大小.
HSSFComment comment=p.createComment(new HSSFClientAnchor(0,0,0,0,(short)3,3,(short)5,6));
//输入批注信息
comment.setString(new HSSFRichTextString("插件批注成功!插件批注成功!"));
//添加作者,选中B5单元格,看状态栏
comment.setAuthor("toad");
//将批注添加到单元格对象中
cell.setCellComment(comment);
//创建输出流
FileOutputStream out=new FileOutputStream("writerPostil.xls");

wb.write(out);
//关闭流对象
out.close();
}
Aspose.cell for Java+Aspose.PDF for Java 可以实现java录excel表单,但是网上Aspose的jar包貌似没破解的,.net的倒挺多.

如何把java查询出的内容导入到excel表格

java查询出的内容导入到excel表格
/**导出数据为XLS格式
* @param fos
* @param bo
*/
public void writeExcelBo(FileOutputStream fos, java.util.Vector ve)
{
jxl.write.WritableWorkbook wwb;
try
{
wwb= Workbook.createWorkbook(fos);
jxl.write.WritableSheet ws= wwb.createSheet("booksheet", 10);
ws.addCell(new jxl.write.Label(0, 1, "书目ID"));
ws.addCell(new jxl.write.Label(1, 1, "ISBN"));
ws.addCell(new jxl.write.Label(2, 1, "定价"));
ws.addCell(new jxl.write.Label(3, 1, "书名"));
ws.addCell(new jxl.write.Label(4, 1, "原书名"));
ws.addCell(new jxl.write.Label(5, 1, "副题名"));
ws.addCell(new jxl.write.Label(6, 1, "著者"));
ws.addCell(new jxl.write.Label(7, 1, "译者"));
ws.addCell(new jxl.write.Label(8, 1, "版次"));
ws.addCell(new jxl.write.Label(9, 1, "出版地"));
ws.addCell(new jxl.write.Label(10, 1, "出版社"));
ws.addCell(new jxl.write.Label(11, 1, "出版日期"));
ws.addCell(new jxl.write.Label(12, 1, "页数"));
ws.addCell(new jxl.write.Label(13, 1, "书高"));
ws.addCell(new jxl.write.Label(14, 1, "装帧"));
ws.addCell(new jxl.write.Label(15, 1, "丛书名"));
ws.addCell(new jxl.write.Label(16, 1, "一般性附注项"));
ws.addCell(new jxl.write.Label(17, 1, "简介"));
ws.addCell(new jxl.write.Label(18, 1, "主题词"));
ws.addCell(new jxl.write.Label(19, 1, "中图法分类"));
ws.addCell(new jxl.write.Label(20, 1, "更新日期"));
ws.addCell(new jxl.write.Label(21, 1, "本数"));
book=new Book[ve.size()];
for (int i= 0; i < ve.size(); i++)
{
book[i]= (Book)ve.get(i);
ws.addCell(new jxl.write.Label(0, i + 2, "" + book[i].getBookId()));
ws.addCell(new jxl.write.Label(1, i + 2, book[i].getIsbn()));
ws.addCell(new jxl.write.Label(2, i + 2, "" + book[i].getPrice()));
ws.addCell(new jxl.write.Label(3, i + 2, book[i].getBookTitle()));
ws.addCell(new jxl.write.Label(4, i + 2, book[i].getOldFilename()));
ws.addCell(new jxl.write.Label(5, i + 2, book[i].getSubTitle()));
ws.addCell(new jxl.write.Label(6, i + 2, book[i].getWriter()));
ws.addCell(new jxl.write.Label(7, i + 2, book[i].getTranscribe()));
ws.addCell(new jxl.write.Label(8, i + 2, "" + book[i].getVersion()));
ws.addCell(new jxl.write.Label(9, i + 2, book[i].getPublishCity()));
ws.addCell(new jxl.write.Label(10, i + 2, book[i].getPublisher()));
ws.addCell(new jxl.write.Label(11, i + 2, book[i].getPublishDate().toString()));
ws.addCell(new jxl.write.Label(12, i + 2, "" + book[i].getPage()));
ws.addCell(new jxl.write.Label(13, i + 2, "" + book[i].getHight()));
ws.addCell(new jxl.write.Label(14, i + 2, book[i].getInstall()));
ws.addCell(new jxl.write.Label(15, i + 2, book[i].getSeries()));
ws.addCell(new jxl.write.Label(16, i + 2, book[i].getNotes()));
ws.addCell(new jxl.write.Label(17, i + 2, book[i].getPrecisnotes()));
ws.addCell(new jxl.write.Label(18, i + 2, book[i].getSubject()));
ws.addCell(new jxl.write.Label(19, i + 2, book[i].getCls().replaceAll("_", "")));
ws.addCell(new jxl.write.Label(20, i + 2, book[i].getUpdatedate().toString()));
ws.addCell(new jxl.write.Label(21, i + 2, "0"));
}
jxl.write.WritableFont wfc=
new jxl.write.WritableFont(
WritableFont.ARIAL,
255,
WritableFont.BOLD,
false,
UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK);
jxl.write.WritableCellFormat wcfFC= new jxl.write.WritableCellFormat(wfc);
ws.addCell(new jxl.write.Label(0, 0, "为保证您提交定单的稳定和正确,导入定单时候请勿更改此表格式(请勿更改书目ID,订购本数自行添加!)"));
wwb.write();
//关闭Excel工作薄对象
wwb.close();
} catch (IOException e)
{} catch (RowsExceededException e)
{} catch (WriteException e)
{}
}
//导入EXCEL
if (f.getName().indexOf(".xls") 0)
{
try
{
fis= new FileInputStream(f);
BookBean bob= new BookBean();
UserBean usb= new UserBean();
jxl.Workbook rwb= Workbook.getWorkbook(fis);
jxl.Sheet sh= rwb.getSheet(0);
int rowCount= sh.getRows();
SimpleDateFormat sdf= new SimpleDateFormat("dd/MM/yyyy");
book= new Book[rowCount - 1];
for (int i= 1; i < rowCount; i++)
{
book[i - 1]= new Book();
jxl.Cell[] ce= sh.getRow(i);
book[i - 1].setIsbn(ce[0].getContents().toString());
book[i - 1].setSeries(ce[1].getContents().toString());
book[i - 1].setBookTitle(ce[2].getContents().toString());
book[i - 1].setWriter(ce[3].getContents().toString());
book[i - 1].setTranscribe(ce[4].getContents().toString());
book[i - 1].setPublisher(ce[5].getContents().toString());
book[i - 1].setPublishDate(sdf.parse(ce[6].getContents().toString(), new ParsePosition(0)));
book[i-1].setVersion(Integer.parseInt(ce[7].getContents().toString()));
book[i-1].setPage(Integer.parseInt(ce[8].getContents().toString()));
book[i-1].setCls(ce[9].getContents().toString());
book[i-1].setPrecisnotes(ce[10].getContents().toString());
book[i-1].setInstall(ce[11].getContents().toString());
book[i-1].setPrice(Float.parseFloat(ce[12].getContents().toString()));
book[i-1].setUserid(usb.getUser().getUserid());
getVector().addElement(book[i - 1]);
}
rwb.close();
fis.close();
} catch (FileNotFoundException e)
{} catch (BiffException e)
{} catch (IOException e)
{} catch (NumberFormatException e)
{
ShowMessage("数据导入失败,请按照本软件要求的EXCEL格式导入定单");
}
}

如何用JAVA将数据库中的数据导入到excel表格

import java.io.*;
import java.text.SimpleDateFormat;
import java.util.*;
import java.sql.*;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import jxl.*;
public class SimUpdate {
 private String fileName;
 public ZfzSimUpdate(String fileName){
  this.fileName = fileName;
 }
 static Map tNames;
 static{
  tNames = new HashMap();
 }
 /**
  * 用于产生 数据库java录excel表单的 ID 值java录excel表单,组成 [年月日时分秒(100-999)] 总共 17 位数.
  * 根据不同的表名,可保证同一秒内产生的 ID 号不重复
  */  
 private static String getDtime() {
  String rid;
  Date nd = new Date();
  SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
  rid = sdf.format(nd);
  return rid;
 }
 
 public String getSeqNumber(String tableName) {
  if(tableName == null || "".equals(tableName))
   tableName = "GENERY";
  Integer it;
  // noinspection SynchronizeOnNonFinalField
  synchronized(tNames){
   it = (Integer)tNames.get(tableName);
   if(it == null){
    it = new Integer(100);
    tNames.put(tableName, it);
   }else{
    if(it.intValue()  998)
     it = new Integer(100);
    else
     it = new Integer(1 + it.intValue());
    tNames.put(tableName, it);
   }
  }
  return getDtime() + String.valueOf(it);
 }
 
 private void updateDb(){
  try{
   Connection conn = DbPool.connectDB();
   if(conn != null){
    Statement stmt = conn.createStatement();
    /**********************************************/
    jxl.Workbook rwb = null;
    try{
     //构建Workbook对象 只读Workbook对象
     //直接从本地文件创建Workbook
     //从输入流创建Workbook
     InputStream is = new FileInputStream(fileName);
     rwb = Workbook.getWorkbook(is);
     //Sheet(术语:工作表)就是Excel表格左下角的Sheet1,Sheet2,Sheet3但在程序中
     //Sheet的下标是从0开始的
     //获取第一张Sheet表
     Sheet rs = rwb.getSheet(0);
     //获取Sheet表中所包含的总列数
     int rsColumns = rs.getColumns();
     //获取Sheet表中所包含的总行数
     int rsRows = rs.getRows();
     //获取指这下单元格的对象引用
     
     String simNumber = "",termSeqId = "";
     //指定SIM卡号及序列号
     for(int i=0;i<rsRows;i++){
      for(int j=0;j<rsColumns;j++){
       Cell cell = rs.getCell(j,i);
       if(j==0){
        simNumber = cell.getContents();
       }  
       termSeqId = "633"+simNumber;
      } 
      String sql = "查询SQL";
      int isOk = stmt.executeUpdate(sql);
      if(isOk == 0  !simNumber.equals("")){
       String termId = getSeqNumber("termInf");
       String insertSql = "自定义INSERT";
       int isAdd = stmt.executeUpdate(insertSql);
       if(isAdd  0){
        System.out.println("成功插入第"+i+"条数据");
       }
        
      }
      //System.out.println("SIM卡号:"+simNumber+",序列号:"+termSeqId);
     }
     
     //以下代码为写入新的EXCEL,这里不使用,所以注释
     /*
     
     //利用已经创建的Excel工作薄创建新的可写入的Excel工作薄
     jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File("D://Book2.xls"),rwb);
     //读取第一张工作表
     jxl.write.WritableSheet ws = wwb.getSheet(0);
   
     //获取第一个单元格对象
     jxl.write.WritableCell wc = ws.getWritableCell(0, 0);
     //决断单元格的类型,做出相应的转化
     if (wc.getType() == CellType.LABEL) {
      Label l = (Label) wc;
      l.setString("The value has been modified.");
     }
     //写入Excel对象
     wwb.write();
     wwb.close();
      */
    }catch(Exception e){
     e.printStackTrace();
    }
    finally{
     //操作完成时,关闭对象,翻译占用的内存空间
     rwb.close();
   
    }
    /*********************************************/
}
  }catch(Exception e){
   e.printStackTrace();
  }
 }
 public static void main(String args[]){
  DbPool dbPool = new DbPool("dbConn.cfg");//连接数据库
  SimUpdate simUpdate = new SimUpdate("zfz_sim.xls");
  simUpdate.updateDb();
  
 }
  
}
我只用java录excel表单了读取XLS,写入没试,应该没问题吧,java录excel表单你把注释了的拿 来试一下吧

JAVA怎么向Excel中写入批量数据?

public static void drawExcel(HSSFWorkbook wb, String sheetName, String title, int n, List<? exlList, int[] index){
List<Object[] exList =(List<Object[])exlList;
int len = exList.get(0).length;
// 创建一个sheet表单
HSSFSheet sheet = wb.createSheet(sheetName);
Region region = null;
//样式
HSSFCellStyle cellStyle1 = setStyleBorder(wb);
HSSFCellStyle cellStyle2 = setStyleFontBorder(wb);
// 创建标题行
HSSFRow row = sheet.createRow(0);
row.setHeight((short)500);
// 创建单元格
HSSFCell cell = null;
if(title != null !"".equals(title)){
region = new Region(0, (short)0, 0, (short)(len- 1));
sheet.addMergedRegion(region);

cell = row.createCell(0);
// 标题写入单元格
cell.setCellValue(title);
cell.setCellStyle(setStyleFontSize(wb, 18));
}else{
n = n - 1;
}
NumberFormat formatter = NumberFormat.getNumberInstance();
formatter.setMaximumFractionDigits(8);
//合计信息
Double[] sum = new Double[len];
Object[] s = null;
for(int i = 0; i < exList.size(); i++){
s = exList.get(i);
row = sheet.createRow(i + n);
// 创建数据行
for(int j = 0; j < s.length; j++){
cell = row.createCell(j);
/***
* jobin create
*/
if(s[j] instanceof Integer || s[j] instanceof Float){
cell.setCellType(HSSFCell.CELL_TYPE_NUMERIC);
}else{
cell.setCellType(HSSFCell.CELL_TYPE_STRING);
}
if(!StringUtils.isNotEmpty(s[j])){
cell.setCellStyle(cellStyle1);
continue;
}
String[] rs = null;
int l = 3000;
if(i == 0 s[j].toString().indexOf(",") 0){
rs = s[j].toString().split(",");
cell.setCellValue(rs[0]);
l = Integer.parseInt(rs[1]);
}else{
cell.setCellValue(s[j].toString());
}
if(i == 0){
cell.setCellStyle(cellStyle2);
//设置列宽
// if(j == 0){
sheet.setColumnWidth(j, l);
// }else if(j == s.length -1){
// sheet.setColumnWidth(j, 5000);
// }else{
// sheet.setColumnWidth(j, 3000);
// }
}else{
cell.setCellStyle(cellStyle1);
//合计统计
if(index != null){
for(int in : index){
if(in == j){
if(sum[in] == null) sum[in] = 0.0;
sum[in] += Double.parseDouble(s[j].toString());
}
}
}
}
}
}
//合计信息
if(index != null){
region = new Region(exList.size() + 1, (short)0, exList.size() + 1, (short)(index[0]-1));
sheet.addMergedRegion(region);
row = sheet.createRow(exList.size() + n);
for(int i = 0; i < sum.length; i++){
cell = row.createCell(i);
cell.setCellStyle(cellStyle2);
if(i == 0){
cell.setCellValue("合计");
}else if(sum[i] != null){
cell.setCellValue(formatter.format(sum[i]).replace(",", ""));
}
}
}
}
核心代码,我项目上使用的 关于java录excel表单和java导入excel表格的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 java录excel表单的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java导入excel表格、java录excel表单的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:excel表格是什么(excel表格是什么样的图片)
下一篇:制造业生产管理不足有哪些(生产管理的不足)
相关文章