`

java读取Excel导出Html对应的table代码

阅读更多
package jxl.bp;

import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import jxl.Cell;
import jxl.Range;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;

public class Run {

public static void main(String[] args) throws BiffException, IOException {
new Run()._m_readExcel();
}

public void _m_readExcel() throws BiffException, IOException {
String _v_filePath = "E:\\222222222222222.xls";
File _v_excelFile = new File(_v_filePath);
Workbook _v_wb = Workbook.getWorkbook(_v_excelFile);
Sheet _v_s = _v_wb.getSheet(1); // 只做了一个Sheet的, 如果想全部遍历, 只需要套入循环内即可
Range[] _v_rs = _v_s.getMergedCells(); // 得到当前Sheet里面合并的单元格个数
List<Range> _v_listRange = new ArrayList<Range>(); // 换一个方式存储合并的单元格
List<Range> _v_listRange2 = new ArrayList<Range>(); // 存储用过的合并单元格
// 赋值
for (Range r : _v_rs)
_v_listRange.add(r);
String _v_string = "<table>\r\n";
for (int i = 0; i < _v_s.getRows(); i++) {
_v_string += "\t<tr>\r\n";
Cell[] _v_cs = _v_s.getRow(i);
for (int _v_i = 0; _v_i < _v_cs.length; _v_i++) {
Cell _v_c = _v_cs[_v_i];
boolean b = true; // 表示是否是合并的单元格
boolean bool = true; // 表示是否已经判断过了
// 判断是否已经用完了合并的单元格, 为用完则循环判断
if(_v_listRange2.size() < _v_listRange.size()) {
// 判断是否已经用过合并的单元格了, 即对bool进行赋值
for (Range range : _v_listRange2) {
Cell _v_tlCell = range.getTopLeft();
Cell _v_blCell = range.getBottomRight();
int c1 = _v_c.getColumn(), c2 = _v_tlCell.getColumn(), c3 = _v_blCell
.getColumn();
int r1 = _v_c.getRow(), r2 = _v_tlCell.getRow(), r3 = _v_blCell
.getRow();
if (c1 >= c2 && c1 <= c3 && r1 >= r2 && r1 <= r3)
bool = false;
}
if (bool) {
for (Range _v_range : _v_listRange) {
Cell _v_tlCell = _v_range.getTopLeft();
Cell _v_blCell = _v_range.getBottomRight();
int c1 = _v_c.getColumn(), c2 = _v_tlCell.getColumn(), c3 = _v_blCell
.getColumn();
int r1 = _v_c.getRow(), r2 = _v_tlCell.getRow(), r3 = _v_blCell
.getRow();
// 判断是否是合并的单元格
if (c1 >= c2 && c1 <= c3 && r1 >= r2 && r1 <= r3) {
_v_string += "\t\t<td rowspan=\"" + (r3 - r2 + 1)
+ "\" colspan=\"" + (c3 - c2 + 1)
+ "\">\r\n\t\t\t"
+ _v_c.getContents().replaceAll("\n", "")
+ "\r\n\t\t</td>\r\n";
_v_i += (c3 - c2);
b = false;
_v_listRange2.add(_v_range);
}
}
}
}
if (b && bool) {
_v_string += "\t\t<td>\r\n\t\t\t"
+ _v_c.getContents().replaceAll("\n", "")
+ "\r\n\t\t</td>\r\n";
}
}
_v_string += "\t</tr>\r\n";
}
_v_string += "</table>";
PrintWriter _v_pw = new PrintWriter("E:\\33333333333.txt");
_v_pw.println(_v_string);
_v_pw.flush();
_v_pw.close();
System.out.println(_v_string);
}

}
分享到:
评论
1 楼 pinus 2017-10-20  
不错,学习了~~~

相关推荐

    JAVA读取Excel,建库建表,并生成java实体

    总结,Java读取Excel并进行数据库建库建表及生成Java实体的过程涉及了Apache POI库的使用、数据库操作和源代码生成。理解这些步骤可以帮助你有效地处理类似的任务,提高开发效率。在实际应用中,你还需要考虑错误...

    java复杂模板excel导出例子

    Apache POI提供了丰富的API,可以创建、修改和读取Excel工作簿、工作表、单元格等元素,非常适合构建复杂模板。 1. **安装Apache POI**: 在项目中引入Apache POI的依赖,如果是Maven项目,可以在pom.xml文件中添加...

    Java读取Word中的表格(Excel),并导出文件为Excel

    以上步骤概括了如何使用Apache POI从Word文档中读取表格数据并将其导出到Excel文件。请注意,实际操作中可能需要处理更复杂的情况,如样式、超链接、图片等。在处理这类问题时,Apache POI提供了丰富的API来帮助我们...

    java根据excel生成 hive建表语句

    接下来,我们需要创建一个Java程序来读取Excel文件。使用POI库,你可以通过`XSSFWorkbook`对象打开Excel文件,然后通过`XSFSheet`访问工作表,再通过`XSSFRow`和`XSSFCell`获取单元格数据。以下是一个简单的示例代码...

    java后台html 转excel

    在Java后台处理HTML数据并转换成Excel文件是一个常见的需求,特别是在数据分析、报表生成或导出功能中。这个技术涉及到HTML解析、数据提取以及Excel文件的生成。以下将详细讲解这个过程涉及的关键知识点。 1. HTML...

    poiexcel导出html格式

    Apache POI 是 Java 平台上处理微软 Office 文件格式的主要库,如 `.xls`(Excel 97-2007 BIFF 格式)和 `.xlsx`(Excel 2007+ OpenXML 格式)。它允许开发者创建、修改和显示这些文件,且支持读写操作。 2. **POI...

    JAVA读取Excel,建库建表,并生成java实体.zip

    这个名为"JAVA读取Excel,建库建表,并生成java实体.zip"的压缩包文件,显然提供了一个完整的解决方案,涵盖了从读取Excel数据到在数据库中创建表,以及根据Excel内容生成Java实体类的全过程。下面我们将详细探讨...

    页面html Table表格导出Execl

    在网页开发中,有时我们需要将HTML表格的数据导出到Excel文件中,以便用户可以进行更方便的查看、编辑和分析。"页面html Table表格导出Execl"这个主题涉及的技术点主要包括HTML表格的处理、JavaScript(或者jQuery)...

    java中读取excel,并在jsp中以表格展现

    在Java编程环境中,读取Excel文件并将其内容在JSP(Java Server Pages)页面上以表格形式展示是一项常见的任务,特别是在处理数据导入、导出或数据可视化时。本篇文章将详细讲解如何实现这一功能,包括读取Excel文件...

    java读取Excel数据

    本篇文章将详细讲解如何在MyEclipse开发环境中,利用Java编程语言读取Excel文件并将其数据显示在网页上。 首先,我们需要了解Java与Excel交互的核心库:Apache POI。Apache POI是一个开源项目,提供了API来处理...

    java导出excel

    使用POI,开发者可以在Java中创建、修改和读取Excel文件。例如,`XSSFWorkbook`类用于处理.xlsx(Excel 2007及以上版本)文件,而`HSSFWorkbook`类则处理.xls(Excel 97-2003)文件。 2. **创建Workbook和Sheet**:...

    使用java做数据库导出excel

    在Java编程环境中,导出数据到Excel是一种常见的需求,尤其在数据分析、...希望这个教程对初学者在Java数据库到Excel导出方面有所帮助。在实践中不断学习和探索,你将能够熟练掌握这项技能,应对各种复杂的业务需求。

    java word导出功能实现

    Apache POI库是Java开发者用来处理Microsoft Office格式文件(如Word、Excel)的一个强大工具,尤其在读取和写入Word文档方面表现优秀。本教程将深入探讨如何使用Apache POI实现Java中导出符合特定模板格式的Word...

    kettle 使用excel模板导出数据

    在这个场景中,我们将创建一个特定的Transform,用于从数据库或其他数据源读取数据,并使用预定义的Excel模板进行导出。 1. **创建Excel Writer Transform**:在Kettle中,我们使用"Excel Writer"步骤来实现这个...

    导出Excel源代码

    在IT行业中,导出Excel源代码是一个常见的任务,特别是在数据处理和报告生成的场景下。这里,我们将深入探讨如何使用Java编程语言来实现这个功能,同时结合SQLite数据库进行数据读取。虽然本例中使用了SQLite,但这...

    分多个sheet导出excel

    在Java编程中,Apache POI库是一个非常流行的API,它允许开发者读取、创建和修改Microsoft Office格式的文件,包括Excel。本篇文章将详细介绍如何利用Apache POI来分多个sheet导出Excel文件。 首先,我们需要引入...

    Java 代码从Excel表写入数据库

    通过使用POI,我们可以方便地在Java程序中创建、修改和读取Excel工作簿、工作表和单元格。 1. **Java与Excel交互**: - **创建Workbook对象**:这是Excel文件的基本容器,可以包含多个Sheet。POI提供了`...

    java操作Excel的jar

    7. **读取Excel文件**: 使用WorkbookFactory类打开现有的Excel文件。 ```java try (InputStream input = new FileInputStream("input.xls")) { Workbook workbook = WorkbookFactory.create(input); // 之后进行...

    sqllite数据导入导出到Excel

    将SQLite数据库的数据导入到Excel或从Excel导出到SQLite,对于数据交换和分析具有很高的实用价值。以下将详细讲解这个过程涉及的知识点。 首先,我们需要了解SQLite数据库的基本操作。SQLite提供了一个命令行工具,...

Global site tag (gtag.js) - Google Analytics