Java操作Excel:book保护
Excel的book保护是很常用的,主要是不想让别人修改Excel的时候用。这样能够避免恶意随便修改数据,提高数据的可行度。
那么JAVA来实现设置book保护怎么做呢?
查找了几种常见的JAVA操作Excel的一些包,大体结果如下:
1. POI
POI的HSSFWorkbook类有writeProtectWorkbook(password, username)。这边可以设置密码和事谁保护的,但这个顾名思义就写保护,实现和Excel的book保护有出入。
当然,sheet保护的话用HSSFSheet类的protectSheet(password)方法就可以了。
2. JXL
Workbook类的setProtected(boolean)方法感觉是用来做book保护的,但看了说明是设置sheet保护的。因此也是实现不了book保护的效果。
3. OpenXLS
最后好不容易找到了这个包。WorkBook的setProtected(true)方法设置后就实现了book保护。代码如下:
// read file
WorkBook workbook = new WorkBookHandle(new FileInputStream(new File("d:/openxlsTest.xls")));
// protect
workbook.setProtected(true);
// write file
workbook.writeBytes(new FileOutputStream(new File("d:/openxlsProtect.xls")));
book保护后的效果,sheet不能增加,删除等
相关文档:
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......
/**
SimpleDateFormat函数语法:
G 年代标志符
y 年
M 月
d 日
h 时 在上午或下午 (1~12)
H 时 在一天中 (0~23)
m 分
s 秒
S 毫秒
E 星期
D 一年中的第几天
F 一月中第几个星期几
w 一年 ......
1、面向对象的特征有哪些方面
1.抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:
继承是一种联结类的层次模型,并且允许和鼓 ......
如何读取资源文件:
(一)
Properties props = new Properties();
props.load(new FileInputStream("db.properties"));
(二)
blog.properties文件如下
dbdriver=oracle.jdbc.driver.OracleDriver
dburl=jdbc:oracle:thin:@127.0.0.1:1521:ora92
dbuser=blog
dbpwd=blog
- ......