java錄excel表單(java導入excel表格

      網友投稿 684 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表格是什么樣的圖片)
      下一篇:軟件繪制甘特圖(軟件繪制甘特圖教程)
      相關文章
      亚洲a∨无码精品色午夜| 亚洲AV无码一区二区三区鸳鸯影院| 亚洲精品无码久久| 亚洲人成电影亚洲人成9999网| 亚洲精品乱码久久久久66| 国产亚洲精久久久久久无码AV| 亚洲午夜精品久久久久久浪潮 | 亚洲视频在线观看不卡| 中文字幕在线观看亚洲| 亚洲综合图片小说区热久久| 久久久久亚洲AV成人片| 久久精品亚洲一区二区三区浴池 | 在线观看亚洲视频| 亚洲AV永久无码精品网站在线观看| 亚洲精品无码不卡在线播放| 亚洲AV香蕉一区区二区三区| 无码不卡亚洲成?人片| 亚洲国产主播精品极品网红 | 亚洲制服丝袜精品久久| 亚洲日本人成中文字幕| 亚洲欧美国产精品专区久久| 久久亚洲AV成人无码国产最大| www亚洲精品少妇裸乳一区二区| 亚洲欧洲精品成人久久奇米网| 自拍偷自拍亚洲精品第1页| 亚洲精品无码乱码成人| 亚洲bt加勒比一区二区| 亚洲欧洲国产经精品香蕉网| 亚洲人成www在线播放| 亚洲成a人无码亚洲成www牛牛| 国产亚洲综合精品一区二区三区| 亚洲伊人久久综合影院| 亚洲国产精品无码AAA片| 亚洲综合视频在线| 亚洲狠狠成人综合网| 99亚洲男女激情在线观看| 国产乱辈通伦影片在线播放亚洲| 亚洲国产精品一区二区第一页| 亚洲视频一区二区三区| 国产v亚洲v天堂a无| 日韩精品电影一区亚洲|