java 操作Excel表 创建 查看 修改
需要用到jxl.jar包 修改有两种方法一种是jxl的 另一种需要apache.poi包
package excelChuLi; import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream; 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; import jxl.*;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook; public class Excel_1 {
public void show(){//往Excel表插入数据
try {
WritableFont font1=new WritableFont(WritableFont.TIMES,16,WritableFont.BOLD);//这儿是设置字体大小和样式
WritableCellFormat format1=new WritableCellFormat(font1);
//水平居中
format1.setAlignment(jxl.format.Alignment.CENTRE);
//把垂直对齐方式指定为居中
format1.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);// 打开文件 上面内容设置样式 可以忽略 只是参考学习
WritableWorkbook book = Workbook.createWorkbook(new File("C:\\file\\test.xls"));
// 生成名为“第一页”的工作表,参数0表示这是第一页
WritableSheet sheet = book.createSheet("第一页", 0);
//sheet.mergeCells(0,0,5,0);//合并第一行1至6列
// 在Label对象的构造子中指名单元格位置是第一列第一行(0,0)
// 以及单元格内容为test
Label label = new Label(0, 0, "test",format1);//不需要设置样式的可以去掉format1// 将定义好的单元格添加到工作表中
sheet.addCell(label);
/*
* 生成一个保存数字的单元格 必须使用Number的完整包路径,否则有语法歧义 单元格位置是第七列,第一行,值为789.123
*/
jxl.write.Number number = new jxl.write.Number(6, 0, 555.12541);
sheet.addCell(number);
// 写入数据并关闭文件
book.write();
book.close();
} catch (Exception e) {
System.out.println(e);
}
}
public void duqu(){//读取一个单元格内容
try {
Workbook book = Workbook.getWorkbook(new File("C:\\file\\test.xls"));
// 获得第一个工作表对象
Sheet sheet = book.getSheet(0);
// 得到第一列第一行的单元格
Cell cell1 = sheet.getCell(0, 0);
String result = cell1.getContents();//获取单元格内容
System.out.println(result);
book.close();
} catch (Exception e) {
System.out.println(e);
}
} public void hebin(){
try {
// 打开文件
WritableWorkbook book = Workbook.createWorkbook(new File("C:\\file\\test.xls"));
// 生成名为“第一页”的工作表,参数0表示这是第一页
WritableSheet sheet = book.createSheet("第一页", 0); //合并第一列第一行到第六列第一行的所有单元格
sheet.mergeCells(0,0,5,0);
book.close();
} catch (Exception e) {
System.out.println(e);
} }
public void xunhuan(){
try {
Workbook book = Workbook.getWorkbook(new File("C:\\file\\test.xls"));
// 获得第一个工作表对象
Sheet sheet = book.getSheet(0);
// 得到第一列第一行的单元格
int columnum = sheet.getColumns();// 得到列数
int rownum = sheet.getRows();// 得到行数
System.out.println(“列数”+columnum);
System.out.println("行数"+rownum);
for (int i = 0; i < rownum; i++)// 循环进行读写
{
for (int j = 0; j < columnum; j++) {
Cell cell1 = sheet.getCell(j, i);
String result = cell1.getContents();
System.out.print(result);
System.out.print(" ");
}
System.out.println();
}
book.close();
} catch (Exception e) {
System.out.println(e);
} }
public void update(){//第一种修改 需要apache.poi包
try {
File file=new File("C:\\file\\test.xls");
FileInputStream fis=new FileInputStream(file);
HSSFWorkbook workbook=new HSSFWorkbook(fis);
HSSFSheet sheet=workbook.getSheetAt(0);//获取第一页
HSSFRow r=sheet.getRow(1);//第0行
HSSFCell cell=r.getCell(1);//第0个储存单元
cell.setCellValue("修改测试");//set入内容
String str1=cell.getStringCellValue();//get也可以取出值
System.out.println("单元格原来值为"+str1);
fis.close();//关闭文件输入流
FileOutputStream fos=new FileOutputStream(file);//前面的修改信息只是在内存中 这儿才是真的把修改写到表中
workbook.write(fos);//将修改内容写入
workbook.close();
fos.close();//关闭文件输出流
} catch (Exception e) {
System.out.println(e);
} }
public void updat1(){//第二种将源文件重新写入并修改这个是jxl的
try {
//打开文件
Workbook wb = Workbook.getWorkbook(new File("C:\\file\\test1.xls"));
//打开一个文本的副本
WritableWorkbook book = Workbook.createWorkbook(new File("C:\\file\\test1.xls"),wb);//将上一个文本的副本写回到源文件
WritableSheet sheet=book.getSheet(0);
Label label = new Label(2, 0, "test");
sheet.addCell(label);
book.write();
book.close();
} catch (Exception e) {
System.out.println(e);
}
}
public static void main(String[] args) {
// TODO 自动生成的方法存根
Excel_1 n=new Excel_1();
//n.show();//新建并写入信息
//n.duqu();//读取数据
//n.hebin();
//n.xunhuan();//循环遍历表格
n.updat1();
} }
java 操作Excel表 创建 查看 修改的更多相关文章
- java操作Excel、PDF文件
java操作Excel.PDF文件 分享者:Vashon 分享来源:CSDN博客 下面这些是在开发中用到的一些东西,有的代码贴的不是完整的,只是贴出了关于操作EXCEL的代码: jxl是一个*国人写的 ...
- jxl的使用总结(java操作excel)
jxl.jar是通过java操作excel表格的工具类库: jxl.jar包:链接:http://pan.baidu.com/s/1o8qFJHw 密码:5jyq 1:通过模拟实现创建一个表格,然后模 ...
- Java操作Excel文件以及在Android中的应用
本文章由临江仙原创,转载请注明出处:http://blog.csdn.net/zhy_cheng/article/details/10286563 Excel作为一种有格式的文件,可以使用Java来对 ...
- Java操作Excel之POI简单例子
/** * 利用POI操作Excel表单 * * 需要jar包: * HSSF针对03及以前版本,即.xls后缀 * |---poi-3.16.jar * XSSF针对07及以后版本,即xlsx后缀 ...
- 【转载】jxl的使用总结(java操作excel)
jxl.jar是通过java操作excel表格的工具类库: 链接:https://pan.baidu.com/s/1AAT_eA_Q47zFeQohap6eQg 提取码:777b 1:通过模拟实现创建 ...
- java操作excel 工具类
java操作excel 可参考https://blog.csdn.net/xunwei0303/article/details/53213130 直接上代码: 一.java生成excel文件: pac ...
- Java 操作 EXCEL
今天帮朋友写了一段用来处理EXCEL内容的程序,在这里记录下自己的学习过程.主要是对EXCEL表格中的内容做分类和统计,使用计算机来做这种重复的机械性地工作再好不过了.首先,我们需要下载一个java操 ...
- JAVA操作Excel时文字自适应单元格的宽度设置方法
使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...
- Java操作ElasticSearch之创建客户端连接
Java操作ElasticSearch之创建客户端连接 3 发布时间:『 2017-09-11 17:02』 博客类别:elasticsearch 阅读(3157) Java操作ElasticSe ...
随机推荐
- NVelocity介绍,NVelocity中文手册文档及实例下载
NVelocity是什么velocity英音:[vi'lɔsiti]美音:[və'lɑsətɪ]近在做一个项目,客户要求有网站模板功能,能够自主编辑网站的风格,因为这个系统是为政府部门做子站系统,举个 ...
- Java 自动装箱、拆箱机制及部分源码分析
Integer i = 10; //装箱,反编译后发现调用Integer.valueOf(int i) int t = i; //拆箱,反编译后发现调用i.intValue() public clas ...
- 将speedbutton放在toolbar上,flat设为true,并将speedbutton的width和height设得比较大,在speedbutton中间会出现一条竖线,如何消去?
把toolbar的flat设为false就没有竖线了
- MediaElement.js之浏览器跨域请求视频播放
浏览器跨域问题一直以来都是作为前端开发人员常见的问题,所以今天学习了下如何使浏览器跨域请求资源 需要了解的知识 -域(主域,子域,什么是跨域) 简单来说由于浏览器同源策略,凡是发送请求url的协议(h ...
- 安装numpy库
1.先安装pip: 下载地址:http://pypi.python.org/pypi/pip#downloads 下载pip-8.1.2.tar.gz(md5,pgp)完成之后,解压到一个文件夹,cm ...
- 设置app的启动图
Step1 1.点击Image.xcassets 进入图片管理,然后右击,弹出"New Launch Image" 2.如图,右侧的勾选可以让你选择是否要对ipad,横屏,竖屏,以 ...
- VR技术的高速发展阶段
转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 在虚拟现实技术的高速发展阶段,与虚拟现实密切相关的计算机图形学.数字图像处理.传感技术等学科迅速发展,从 ...
- setTimeout使用闭包功能,实现定时打印数值
我们这次使用setTimeout来实现一个按照时间定时,依次打印数值的例子.其实在早期的时候,也是我经常犯的一个错误,或者实现这种能力,似乎js比较牵强,其实是我的错,哈哈!没能理解JS强大之处.我们 ...
- redis数据类型之—Hash
(1)hash 简单介绍 hash类型适合存储对象,字段值只能是字符串,不支持其他数据类型. (2)hash 常用命令 // 增加hash属性值 > hset user: name zm (in ...
- 转载:Tomcat的JVM设置和连接数设置
Windows环境下修改“%TOMCAT_HOME%\bin\catalina.bat”文件,在文件开头增加如下设置:set JAVA_OPTS=-Xms256m -Xmx512m Linux环境下修 ...