需要用到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表 创建 查看 修改的更多相关文章

  1. java操作Excel、PDF文件

    java操作Excel.PDF文件 分享者:Vashon 分享来源:CSDN博客 下面这些是在开发中用到的一些东西,有的代码贴的不是完整的,只是贴出了关于操作EXCEL的代码: jxl是一个*国人写的 ...

  2. jxl的使用总结(java操作excel)

    jxl.jar是通过java操作excel表格的工具类库: jxl.jar包:链接:http://pan.baidu.com/s/1o8qFJHw 密码:5jyq 1:通过模拟实现创建一个表格,然后模 ...

  3. Java操作Excel文件以及在Android中的应用

    本文章由临江仙原创,转载请注明出处:http://blog.csdn.net/zhy_cheng/article/details/10286563 Excel作为一种有格式的文件,可以使用Java来对 ...

  4. Java操作Excel之POI简单例子

    /** * 利用POI操作Excel表单 * * 需要jar包: * HSSF针对03及以前版本,即.xls后缀 * |---poi-3.16.jar * XSSF针对07及以后版本,即xlsx后缀 ...

  5. 【转载】jxl的使用总结(java操作excel)

    jxl.jar是通过java操作excel表格的工具类库: 链接:https://pan.baidu.com/s/1AAT_eA_Q47zFeQohap6eQg 提取码:777b 1:通过模拟实现创建 ...

  6. java操作excel 工具类

    java操作excel 可参考https://blog.csdn.net/xunwei0303/article/details/53213130 直接上代码: 一.java生成excel文件: pac ...

  7. Java 操作 EXCEL

    今天帮朋友写了一段用来处理EXCEL内容的程序,在这里记录下自己的学习过程.主要是对EXCEL表格中的内容做分类和统计,使用计算机来做这种重复的机械性地工作再好不过了.首先,我们需要下载一个java操 ...

  8. JAVA操作Excel时文字自适应单元格的宽度设置方法

    使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...

  9. Java操作ElasticSearch之创建客户端连接

    Java操作ElasticSearch之创建客户端连接 3 发布时间:『 2017-09-11 17:02』  博客类别:elasticsearch  阅读(3157) Java操作ElasticSe ...

随机推荐

  1. MQTT(二)推送

    MQTT V3.1----publish解读 - leeying - 博客园 http://www.cnblogs.com/leeying/p/3791341.html MQTT - 聂永的博客 - ...

  2. mui问题

    2016.7.27 1.当你的html不在文件夹的时候 引路径就不要加../   2.当用svn提交代码的时候要先右键项目->版本管理->与资源库同步,查看你的修改的地方和原来部署上去的文 ...

  3. canvas 画板

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  4. jquery检测浏览器类型

    使用jquery如下代码检测浏览器版本时:出问题,在检测IE浏览器,如果版本是IE11时,会出现 $.browser.msie的返回值是false,$.browser.mozilla的返回值是true ...

  5. nodeJS搭建本地服务器

    准备工作: 安装Node JS: 1:安装全局express:在express4.x版本中,安装时语句变为了这样: npm install -g express-generator 2:创建项目: 选 ...

  6. 面向切面编程AOP

    本文的主要内容(AOP): 1.AOP面向切面编程的相关概念(思想.原理.相关术语) 2.AOP编程底层实现机制(动态代理机制:JDK代理.Cglib代理) 3.Spring的传统AOP编程的案例(计 ...

  7. 如何让页眉随章节的不同而变化(Word 2010)

    在一般情况下,我们将页眉设置完成后,所有章节的页眉都是一样的. 但在某些时候,我们需要让不同的章节拥有各自不同的页眉.那么该如何设置呢? 1. 我们以下图的文件为例,该文件一共包括4个实验,暂未设置页 ...

  8. hdu 1300 Pearls

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=1300 思路:用dp[i]表示前i种花费最低的情况,则有dp[i]=min(dp[i],dp[j+1]+(( ...

  9. Linux yum配置文件详解

    说明:经过网上抄袭和自己的总结加实验,非常详细,可留作参考. yum的配置一般有两种方式:   一种是直接配置/etc目录下的yum.conf文件, 另外一种是在/etc/yum.repos.d目录下 ...

  10. vmware workstation9.0 RHEL5.8 oracle 10g RAC安装指南及问题总结

    一,虚拟机规划 (1)虚拟机:添加三块网卡 eth0 eth1 eth2 ,分别用于内网,心跳,外网RAC1 内网:192.168.1.10/24  心跳:192.168.2.10/24  VIP:1 ...