## **读取Excel文档中的数据**
在实际的开发过程中,经常会遇到提取Excel文档中数据保存到数据库中的需求,PageOffice对此也提供了很好的解决方案。
客户端在线打开Excel文件,保存的时候,PageOffice可以打包Excel文档中的指定单元格的数据或所有的数据提交到服务器端,在服务器端创建PageOffice的ExcelReader命名空间中的Workbook对象,就可以获取到Excel单元格中的值了。
>[info] 请参考PageOffice产品开发包中Samples4示例的演示:
>一、14、最简单的提交Excel中的用户输入内容
Java代码:
~~~
Workbook workBook = new Workbook(request, response);
Sheet sheet = workBook.openSheet("Sheet1");
Table table = sheet.openTable("A1:F5");
String content = "";
int row = 1;
while (!table.getEOF()) {
//获取提交的数值
if (!table.getDataFields().getIsEmpty()) {
content += "A"+String.valueOf(row)+":"+ table.getDataFields().get(0).getText();
content += "B"+String.valueOf(row)+":"+ table.getDataFields().get(1).getText();
content += "C"+String.valueOf(row)+":"+ table.getDataFields().get(2).getText();
content += "D"+String.valueOf(row)+":"+ table.getDataFields().get(3).getText();
content += "E"+String.valueOf(row)+":"+ table.getDataFields().get(4).getText();
content += "F"+String.valueOf(row)+":"+ table.getDataFields().get(5).getText();
System.out.println(content); //输出一行的数据
row++;
table.nextRow();//循环进入下一行
}
}
table.close();
workBook.close();
~~~
ASP.NET代码:
~~~
PageOffice.ExcelReader.Workbook workBook = new PageOffice.ExcelReader.Workbook();
PageOffice.ExcelReader.Sheet sheet = workBook.OpenSheet("Sheet1");
PageOffice.ExcelReader.Table table = sheet.OpenTable("A1:F5");
string content = "";
int row = 1;
while (!table.EOF)
{
//获取提交的数据
if (!table.DataFields.IsEmpty)
{
content += "A"+ row.ToString()+":"+ table.DataFields[0].Text;
content += "B"+ row.ToString()+":"+ table.DataFields[1].Text;
content += "C"+ row.ToString()+":"+ table.DataFields[2].Text;
content += "D"+ row.ToString()+":"+ table.DataFields[3].Text;
content += "E"+ row.ToString()+":"+ table.DataFields[4].Text;
content += "F"+ row.ToString()+":"+ table.DataFields[5].Text;
Response.Write(content); //输出一行的数据
row++;
table.NextRow();//循环进入下一行
}
}
table.Close();
workBook.Close();
~~~
>[danger]**与POI和SharePoint的区别**:
>* POI和SharePoint读取文件中数据的工作都是在服务器端执行的,需要耗费大量服务器资源去处理,还需要处理多个客户并发请求的问题;PageOffice真正的读取单元格数据工作是在客户端执行的,服务器端这些对象只接受一下数据就行,因为每个客户端都各自读取自己的数据,服务器端只接收数据保存到数据库,所以编程实现比较简单。
>* POI需要针对xls和xlsx两种格式的文件编写不同的程序,工作量翻倍。HSSFWorkbook是解析出来excel 2007 以前版本的,后缀名为xls的,XSSFWorkbook是解析excel 2007 版的,后缀名为xlsx。
- 序言
- 产品简介
- PageOffice试用版和和正式版的区别
- PageOffice对客户端的要求
- PageOffice客户端安装步骤
- PageOffice常用功能与工作原理
- OA系统中的文档在线编辑及流转
- 痕迹保留、键盘批注、手写批注
- 文件并发控制功能
- 与数据库的关系
- SaveDataPage和SaveFilePage的区别
- 调用ZoomSeal签章系统中的印章
- 使用RunMacro运行Office的宏
- 为什么采用弹窗方式打开文件
- POBrowser弹窗方式的具体使用
- Word篇
- 常用接口对象
- WordDocument类
- DataRegion类
- DataTag类
- Paragraph类
- Shape类
- Table类
- Column类
- Row类
- Cell类
- WaterMark类
- DataRegion与DataTag的区别
- 编辑模板中的数据区域
- 动态填充Word文档
- 动态插入Word表格
- 动态创建数据区域
- 数据区域点击事件
- 实现Word文档编辑区域控制
- Word文档全文检索
- Word文件版本对比功能
- 实现用户自定义Word模板
- 实现多个Word文件合并
- Excel篇
- 常用接口对象
- Workbook类
- Sheet类
- Table类
- Cell类
- 动态填充Excel文档
- Excel指定单元格点击事件
- 实现用户自定义Excel模板
- 读取Excel文档中的数据
- 隐藏Excel的行号列标
- Java篇
- PageOffice集成说明
- 动态生成Word文件
- 给Word中的Table赋值
- 动态生成Excel文件
- Maven项目中引用PageOffice
- FileMaker组件功能简介
- ASP.NET篇
- PageOffice集成说明
- 给Word中的Table赋值
- 动态生成Word文档
- FileMaker组件功能简介
- 其他
- POPDF组件功能简介
- PPT相关功能简介
- 实现多人同时编辑一份文档
- PageOffice与Apache POI的区别
- 如何录制宏和编辑宏
- PDF篇
- PDF盖章