Java使用POI插件将数据以excel形式备份
将数据以表格形式进行备份
(1)导入poi的jar包
放入lib下: WebRoot\WEB-INF\lib\poi-3.2-FINAL-20081019.jar
下载链接:https://github.com/DFX339/POI_Plugin.git
(2)StringBuffer转换为二维数组
//定义一个StringBuffer,以 \r\n 分一维数组,以 \t 分二维数组
StringBuffer strff = new StringBuffer("姓名\t年龄\t性别\r\n小仙女\t18\t女\r\n");
//将StringBuffer数据转换为一维数组:按行记录区分
Object[] dataLine = strff.toString().split("\r\n"); //定义二维数组,将stringBuffer类型的数据转换为二维数组
Object[][] data = new Object[dataLine.length][];
for(int i=0; i<dataLine.length; i++)
{
//将行数据根据\t拆分,赋值到一维数组的各个列中
data[i] = dataLine[i].toString().split("\t");
}
(3)使用示例一:(容易理解些)
这里会将数据以表格的形式输出,并且数据保存在 F盘下的 123.xls文件 中。
package testPoi; import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException; 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; public class ExportExcel { public static void main(String[] args) throws FileNotFoundException, IOException {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("table"); //创建table工作薄
Object[][] datas = {{"区域", "总销售额(万元)", "总利润(万元)简单的表格"}, {"江苏省" , 9045, 2256}, {"江苏省" , 9045, 2256}, {"广东省", 3000, 690}};
HSSFRow row;
HSSFCell cell;
for(int i = 0; i < datas.length; i++) {
row = sheet.createRow(i);//创建表格行
for(int j = 0; j < datas[i].length; j++) {
cell = row.createCell(j);//根据表格行创建单元格
cell.setCellValue(String.valueOf(datas[i][j]));
}
}
wb.write(new FileOutputStream("f:/123.xls"));
System.out.println("hello poi");
} }
(4)使用示例二:
注:这里的数据内容 strff 里面的数据格式类似这种: 111\t222\t333\t444\r\n555\t666\t777\t888r\n
转换为excel数据为:111 222 333 444
555 666 777 888
/**
* 将txt类型的数据转换为xls所需数据类型
* @param strff 文件中的数据内容
* @param fileName1 :文件名
* @param filePath :文件路径
* @return
* @throws ApplicationException
* @throws FileNotFoundException
* @throws IOException
*/
public HSSFWorkbook txtData_To_XlsData(StringBuffer content,String fileName,String filePath)
throws ApplicationException
{
try{
// logger.info("进入xls数据备份");
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("table"); //创建table工作薄
HSSFRow row; //定义table表中的行
HSSFCell cell; //定义table表中的列 //将StringBuffer数据转换为一维数组:按行记录区分
Object[] dataLine = content.toString().split("\r\n"); //定义二维数组,将stringBuffer类型的数据转换为二维数组
Object[][] data = new Object[dataLine.length][];
for(int i=0; i<dataLine.length; i++)
{
//将行数据根据\t拆分,赋值到一维数组的各个列中
data[i] = dataLine[i].toString().split("\t");
} logger.info("开始xls数据备份");
for(int i = 0; i < data.length; i++) {
row = sheet.createRow(i);//创建表格行
for(int j = 0; j < data[i].length; j++) {
cell = row.createCell(j);//根据表格行创建单元格
cell.setCellValue(String.valueOf(data[i][j]));
}
}
// logger.info("开始xls数据备份,写入文件");
wb.write(new FileOutputStream(filePath+fileName));
// logger.info("开始xls数据备份,写入结束");
return wb;
}catch(FileNotFoundException e){
logger.error((new StringBuilder("备份数据异常:文件不存在")).append(e).toString());
throw new ApplicationException(e.getMessage());
} catch (IOException e) {
logger.error((new StringBuilder("备份数据异常:IOException")).append(e).toString());
throw new ApplicationException(e.getMessage());
}
}
Java使用POI插件将数据以excel形式备份的更多相关文章
- PHP中导出Excel,将数据以Excel形式导出
现在,很多地方都需要导出数据,这里说一种简单的方法将数据以Excel的形式导出,方法如下: <?php date_default_timezone_set('PRC');//设置时区 /*设置h ...
- 数据以Excel形式导出导服务器,再将文件读取到客户端另存 以HSSFWorkbook方式实现
public void exportExcel(List<P2pInfo> repayXist,HttpServletRequest request,HttpServletResponse ...
- java的poi技术读取和导入Excel实例
本篇文章主要介绍了java的poi技术读取和导入Excel实例,报表输出是Java应用开发中经常涉及的内容,有需要的可以了解一下. 报表输出是Java应用开发中经常涉及的内容,而一般的报表往往缺乏通用 ...
- java的poi技术读,写Excel[2003-2007,2010]
在上一篇blog:java的poi技术读取Excel[2003-2007,2010] 中介绍了关于java中的poi技术读取excel的相关操作 读取excel和MySQL相关: java的poi技术 ...
- Java将数据以Excel文件形式导出后台代码实现
下面代码实现所需jar包: tomcat-embed-core-8.5.11.jar: commons-lang3-3.0.1.jar: commons-io-2.5.jar: poi-3.9.jar ...
- java的poi技术读取和导入Excel
项目结构: http://www.cnblogs.com/hongten/gallery/image/111987.html 用到的Excel文件: http://www.cnblogs.com/h ...
- java使用poi包将数据写入Excel表格
1.Excel相关操作代码 import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExcept ...
- 使用POI插件,提取导出excel的工具类
在网站的不同的模块都需要使用到导入导出excel的功能,我们就需要写一个通用的工具类ExcelUtil. 我的思路:首先,导入和导出的Excel的文件格式固定:主标题,二级标题,数据行(姑且就这么叫) ...
- java使用POI解析2007以上的Excel表格
来自http://hao0610.iteye.com/blog/1160678 使用poi来解析Excel的xls和xlsx. 解析xls: package xls; import java.io.F ...
随机推荐
- 通过AndroidSDK自带的Tool在dos命令行窗口显示日志,并存入txt文档中
1.在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中文字符集或者西文字符集. 如果一个文本文件是utf-8的,那么在dos窗口中不能正确显示文件中的内容. 以下命令切换编码: ch ...
- Angular 学习笔记 (version 6 小笔记)
1. lazyload 的 path 变成相对路径了, 不过如果你用 ng update 的话, 依然可以不需要修改, cli config 好像能调支持绝对路径的写法. const routes: ...
- (转)C# Xml进行序列化与反序列化
---------------------------------------------------------------文章1---------------------------------- ...
- Channel L 自然拼读法 Teacher:Lamb
# 今日学习的 bl fl pl cl gl br cr gr pr fr tr dr # 上课内容 was he <--- h在中间出现的情况连读 was he 这里的 ...
- django笔记 - 建站
1,建站步骤:1)django-admin.exe startproject mysite 创建完后的目录结构: - mysite # 对整个程序进行配置 - init - settings # 配置 ...
- Python全栈开发,Day2(in,while else,格式化输出,逻辑运算符,int与bool转换,编码)
一.in的使用 in 操作符用于判断关键字是否存在于变量中 ? 1 2 a = '男孩wusir' print('男孩' in a) 执行输出: True in是整体匹配,不会拆分匹配. ? 1 2 ...
- yii框架中使用gii的用法
首先在config文件中的 main-local.php中添加一句 'allowedIPs' => ['*'],如下图所示:
- Vue自动化工具(Vue-CLI)的安装
安装VUM 前面学习了普通组件以后,接下来我们继续学习单文件组件则需要提前先安装准备一些组件开发工具.否则无法使用和学习单文件组件. 一般情况下,单文件组件,我们运行在 自动化工具vue-CLI中,可 ...
- C# 有哪些集合
队列[Queue] //队列:先进先出 /* *增加元素到队列结尾处 *移除队列开始处 */ Queue queue=new Queue(); queue.Enqueue(Object); queue ...
- python记录_day06
一.小数据池 注意大前提!!!! 小数据池只针对整数.字符串和bool值,因为这些数据是不可变的,这样数据的共享才安全 小数据池也称为小整数缓存机制或驻留机制,是指在不同代码块创建部分小数据对象(具体 ...