- 浏览: 45065 次
- 性别:
- 来自: 苏州
文章分类
最新评论
-
learningBird:
终于可以了。。谢谢。太感谢了。
error at ::0 can't find referenced pointcut..问题
package com.java; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import javax.servlet.ServletException; import jxl.Cell; import jxl.CellType; import jxl.Image; import jxl.Sheet; import jxl.Workbook; import jxl.format.Colour; import jxl.format.UnderlineStyle; import jxl.read.biff.BiffException; import jxl.write.Boolean; import jxl.write.DateFormat; import jxl.write.DateTime; import jxl.write.Label; import jxl.write.Number; import jxl.write.NumberFormat; import jxl.write.WritableCell; import jxl.write.WritableCellFormat; import jxl.write.WritableFont; import jxl.write.WritableImage; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; import jxl.write.biff.RowsExceededException; public class ExcelUtil { public static void main(String[] args) throws ServletException, RowsExceededException, WriteException, BiffException, IOException { //写入excel String fileName = "F:"+File.separator+"write.xls"; writeExcel(fileName); //读取excel readExcel(fileName); String targetfile = "F:"+File.separator+"copy.xls"; copyExcel(fileName, targetfile); } /** * 读取excel * @param fileName */ public static void readExcel(String fileName){ Workbook rwb; try { //excel源文件 FileInputStream is = new FileInputStream(fileName); rwb = Workbook.getWorkbook(is); int sheetNum = rwb.getNumberOfSheets(); for (int i = 0; i < sheetNum; i++) { Sheet st = rwb.getSheet(i); int rows=st.getRows(); int cols=st.getColumns(); //获取某一列的所有单元格,返回的是单元格对象数组 Cell[] rowCs = st.getColumn(0); //获取某一行的所有单元格,返回的是单元格对象数组 Cell[] columns = st.getRow(0); //Cell getCell(int column, int row) System.out.println("当前工作表的名字:"+st.getName()); System.out.println("总行数:"+rows); System.out.println("总列数:"+cols); for (int j = 0; j < rows; j++) { Cell[] cells = st.getRow(j); for (Cell c : cells) { System.out.print(c.getContents()); System.out.print("\t"); } System.out.println(); } // 获得sheet所包含的图片数 int imgNum = st.getNumberOfImages(); //循环sheet的所有图片 for (int j = 0; j < imgNum; j++) { Image image = st.getDrawing(j); byte[] imageData = image.getImageData(); String imgName = image.getImageFile().getName().trim() + ".jpg"; File file = new File("F:"+File.separator + imgName); FileOutputStream os = new FileOutputStream(file);// 建立一个上传文件的输出流 os.write(imageData, 0, imageData.length);// 将文件写入服务器 } } } catch (Exception e) { e.printStackTrace(); } } /** * 写入excel * @param fileName * @throws WriteException * @throws RowsExceededException */ public static void writeExcel(String fileName) throws RowsExceededException, WriteException{ WritableWorkbook wwb = null; try { //首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象 wwb = Workbook.createWorkbook(new File(fileName)); if(wwb!=null){ //创建一个可写入的工作表 //Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置 WritableSheet ws0 = wwb.createSheet("范例", 0); //下面开始添加单元格 for (int i = 0; i < 10; i++) { for(int j=0;j<5;j++){ //这里需要注意的是,在Excel中,第一个参数表示列,第二个表示行 Label labelC = new Label(j, i, "第"+(i+1)+"行,第"+(j+1)+"列"); //将生成的单元格添加到工作表中 ws0.addCell(labelC); } } WritableSheet ws = wwb.createSheet("各种类型写入", 1); //添加 Label 对象 Label labelC = new Label(0, 0, "This is a Label cell"); ws.addCell(labelC); //添加带有字型 Formatting 的对象 WritableFont wf = new WritableFont(WritableFont.TIMES, 18, WritableFont.BOLD, true); WritableCellFormat wcfF = new WritableCellFormat(wf); Label labelCF = new Label(1, 0, "This is a Label Cell", wcfF); ws.addCell(labelCF); // 添加带有字体颜色 Formatting 的对象 WritableFont wfc = new WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, Colour.RED); WritableCellFormat wcfFC = new WritableCellFormat(wfc); Label labelCFC = new Label(2, 0, "This is a Label Cell", wcfFC); ws.addCell(labelCFC); //添加 Number 对象 Number labelN = new Number(0, 1, 3.1415926); ws.addCell(labelN); // 添加带有 formatting 的 Number 对象 NumberFormat nf = new NumberFormat("#.##"); WritableCellFormat wcfN = new WritableCellFormat(nf); Number labelNF = new Number(1, 1, 3.1415926, wcfN); ws.addCell(labelNF); //添加 Boolean 对象 Boolean labelB = new Boolean(0, 2, false); ws.addCell(labelB); //添加 DateTime 对象 DateTime labelDT = new DateTime(0, 3, new java.util.Date()); ws.addCell(labelDT); // 添加带有 formatting 的 DateFormat 对象 DateFormat df = new DateFormat("dd MM yyyy hh:mm:ss"); WritableCellFormat wcfDF = new WritableCellFormat(df); DateTime labelDTF = new DateTime(1, 3, new java.util.Date(),wcfDF); ws.addCell(labelDTF); //插入图片 File imgFile = new File("G:"+File.separator+"12.png"); insertImg(ws, 0, 4, 4, 9, imgFile); } //从内存中写入文件中 wwb.write(); wwb.close(); } catch (IOException e) { e.printStackTrace(); } } /** * 拷贝excel * @param sourcefile * @param targetfile * @throws IOException * @throws BiffException * @throws WriteException */ public static void copyExcel(String sourcefile,String targetfile) throws IOException,BiffException, WriteException{ // 创建只读的 Excel 工作薄的对象 Workbook rw = Workbook.getWorkbook(new File(sourcefile)); // 创建可写入的 Excel 工作薄对象 WritableWorkbook wwb = Workbook.createWorkbook(new File(targetfile), rw); // 读取第一张工作表 WritableSheet ws = wwb.getSheet(0); // 获得第一个单元格对象 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(); // 关闭可写入的 Excel 对象 wwb.close(); // 关闭只读的 Excel 对象 rw.close(); } /**往Excel中插入图片 * @param dataSheet 待插入的工作表 * @param col 图片从该列开始 * @param row 图片从该行开始 * @param width 图片所占的列数 * @param height 图片所占的行数 * @param imgFile 要插入的图片文件 */ public static void insertImg(WritableSheet dataSheet, int col, int row, int width,int height, File imgFile){ WritableImage img = new WritableImage(col, row, width, height, imgFile); dataSheet.addImage(img); } }
jexcelapi
http://www.andykhan.com/jexcelapi/
- jxl.jar (669.4 KB)
- 下载次数: 4
发表评论
-
Tomcat Cannot assign requested address: JVM_Bind 非端口占用冲突
2017-05-11 14:33 488最近遇到在启动Tomcat 7.0时,发现一直无法正确启动 ... -
JAVA读写文本文件的效率
2011-10-10 11:03 881在java写文件中,通常会使用FileOutputStream ... -
java 读写文件
2011-10-10 11:01 5271、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内 ... -
Arraylist使用remove(Object)方法 抛出的异常java.util.ConcurrentModificationException
2011-04-01 10:39 1579工作中碰到个ConcurrentModificationExc ... -
c3pO数据源配置
2011-03-18 13:17 1009<c3p0-config> <default ... -
本地图片预览代码(支持 IE6、IE7)
2010-12-07 11:44 761在 IE6 中,可以很方便地利用 img 的 src 属性,实 ... -
如何使用Oracle SQLDeveloper 中连接MS SQLServer和MySQL数据库
2010-11-09 09:37 1053一、连接至MySQL数据库 1.下载mysql的jdbc驱动 ... -
使用 JDBC 驱动程序
2010-10-16 11:13 1061SQL Server 2008 R2其他版本 SQL Serv ...
相关推荐
通过程序方式从Excel文件中读取数据并导入数据库的传统方法,是通过创建一个OLE对象,打开Excel文件,逐行访问记录行及各个单元,写入数据库表。这种方法一旦数据行通过一定的数量,执行效果就无法忍受了。究其根源...
这些库包含了对Excel对象模型的引用,使得我们能够创建、读取、修改和控制Excel工作簿和工作表。 1. **创建Excel对象**:在你的Delphi代码中,首先需要创建一个`Excel.Application`对象,这代表了一个运行的Excel...
通过以上步骤在程序中引入了可以读取Excle文件的CExport2Excel类; 5、打开excel文件 通过按钮点击打开 void CExcelTestDlg::OnBnClickedButtonOpenExcel() { //获取文件路径 CFileDialog* lpszOpenFile; ...
首先,我们需要导入`os`库来处理文件路径和目录,以及`openpyxl`库来读取和写入Excel文件。以下是一个基本的导入语句: ```python import os from openpyxl import load_workbook, Workbook ``` 接下来,我们要...
在Python中,最常用的读取和写入Excel数据的库是pandas和openpyxl。Pandas是一个强大的数据分析工具,它提供了read_excel函数来加载Excel文件,而openpyxl则用于处理.xlsx格式的Excel文件,提供更底层的访问控制。 ...
1.该文件封装了xlsx文件读取和写入功能 2.需要提前安装openpyxl库 3.所有的表格文件需要是.xlsx结尾,如不是可以使用WPS另存一下 4.使用时需要将文件拷贝到项目同级目录中,并导包 本项目只是一次尝试,还存在诸多...
总之,通过VC++结合`CSpreadSheet`类,我们可以方便地对Excel文件进行读写,实现创建新文件、写入和读取数据、以及各种高级操作。这种方法对于需要处理大量结构化数据的项目非常实用,尤其适用于那些希望将Excel作为...
拷贝Excel工作簿可以通过先读取现有文件,然后重新写入的方式实现。具体步骤如下: 1. 使用`Workbook.getWorkbook()`方法读取现有Excel文件。 2. 使用`Workbook.createWorkbook()`方法创建一个新的可写的`Workbook`...
"BasicExcel处理算法"是针对这一需求提出的一种高效解决方案,它旨在提供简单、直接且实用的方法来读取和写入Excel文件。 首先,我们要理解什么是算法。在计算机科学中,算法是一系列明确的步骤,用于解决特定问题...
Python提供了多个库来支持Excel文件的读取和写入,其中最常用的有`pandas`库和`openpyxl`库。这篇基础操作篇将带你深入理解如何在Python中导入Excel数据。 首先,我们需要安装必要的库。`pandas`库是处理数据的主要...
本主题主要关注如何使用Java来读取和写入Excel文件,特别是通过标题"JAVA-write-EXCEL.rar_copy excel java_java write_java读取_java读取Excel"所暗示的知识点。我们将探讨两个主要的API库:Apache POI和JExcelAPI...
NPOI支持创建新的工作簿、工作表,添加单元格,以及对已有Excel文件进行读取和修改,是开发者进行数据处理和报表生成的得力工具。 2. **C#与NPOI结合** 在C#中使用NPOI,可以通过NuGet包管理器安装NPOI库。C#的强...
在VC++开发环境中,经常需要处理与Excel文件的交互,比如读取或写入数据。本知识点主要介绍如何在Visual C++(VC)项目中导入并使用Excel文件内容,特别是通过封装好的代码库来简化这一过程。徐景周老师的代码为...
Java的Apache POI库是一个强大的工具,用于读取、创建和修改Microsoft Office格式的文件,尤其是Excel工作簿。本文将深入探讨使用POI操作Excel文件时的一些关键知识点和常见问题。 1. **设置分页符的bug** 在处理...
python使用COM方法读写EXCEL 读取,写入,拷贝,新建表
Apache POI 是一个流行的开源库,它允许开发者使用Java语言来读取、写入和修改Microsoft Office格式的文件,包括Excel(.xlsx 和 .xls)。本教程将深入探讨如何使用Apache POI库来复制Excel表格的指定行数及其样式。...
在Java开发中,Apache POI库是一个非常实用的工具,用于读取、写入和修改Microsoft Office格式的文件,特别是Excel文件(.xlsx和.xls)。本篇将详细讲解如何使用POI库进行Excel的Sheet页复制,包括数据和样式的跨...
对于C++开发者来说,有时需要在程序中直接读取或写入Excel文件,这时就需要借助第三方库来实现。本篇将详细探讨C++与Excel交互的第三方库——xlnt 1.5.0,以及如何在Windows 10环境下利用Visual Studio 2022编译和...
在进行Python操作Excel的实际代码编写中,通常需要先安装xlrd库读取Excel文件,然后通过xlutils的copy方法将xlrd读取到的对象拷贝到内存中,并修改内存中的对象。最后通过xlwt等库将修改后的对象保存到本地磁盘上的...
由于RF框架中的扩展库ExcelLibrary只能操作xls低版本的excel,对于高版本的xlsx的excel并不支持,于是自己用python写了适用于RF框架的ExcelXLSXLibrary类库,可以完美操作xlsx,使用该类库注意事项: 1、安装...