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 ...
随机推荐
- PHP PHPUnit的简单使用
1.window安装pear的教程:http://jingyan.baidu.com/article/ca41422fd8cf3d1eae99ed3e.html 2.在工作目录下,放两个文件: 1)C ...
- JavaScript和JQuery好书推荐
其实无论你是php/python/java还是c/c++,只会自己那点知识是无法独立完成一个站点的建设的! 如果你因自己能力不足拒绝过几次亲友的建站请求,或者因合作中不了解前端是什么东西而失去过几次创 ...
- 解决dom4j java.lang.NoClassDefFoundError: org/jaxen/JaxenException
即使用这个方法需要以下两个包: dom4j-1.6.1.jar-306 KB jaxen-1.1-beta-6.jar-238 KB 或者 <dependency> <groupId ...
- 原生java 压缩解压zip文件
import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import ...
- 解决ssh远程登陆linux显示-bash-4.1$
cp -pr /etc/skel/.bash* /home/test/ #/home/test是用户目录改变用户家目录:usermod -md /tmptest test
- Android开发之---Activity生命周期
Android开发中,有四大组件:Activity.Service.Content Provider.Broadcast Receiver,可以说,activity的使用是最频繁的了,这里来梳理一下与 ...
- [Unity3D]Unity+Android交互教程——让手机"动"起来
想要用Unity实现一个二维码扫描的功能,然后网上找插件,找到一个貌似叫EasyCodeScanner,但下载下来用用,真不好使,一导入运行就报错,调好错了再运行发现点按钮没反应,反复试了几遍发现还是 ...
- ImageSwitcher图片切换的简单用例
ImageSwitcher的原理:ImageSwitcher有两个子View:ImageView,当左右滑动的时候,就在这两个ImageView之间来回切换来显示图片 实现左右滑动切换图片 BaseA ...
- getter & setter
ECMAScript 5: setter和getter的使用方式: 1.set/get: var person = { _name: '', get name() { return this._nam ...
- 后台动态生成GridView列和模版
考虑到很多数据源是不确定的,所以这时无法在前台设置gridview的表头,需要在后台动态指定并绑定数据. 前台代码如下: <%@ Page Title="主页" Langua ...