`
wuxiao_v
  • 浏览: 45350 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

POI中文编码及多工作表输出

阅读更多
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;

public class CreateXLS {

	private HSSFWorkbook workbook = new HSSFWorkbook();

	public HSSFWorkbook getWorkbook() {
		return workbook;
	}

	public void setWorkbook(HSSFWorkbook workbook) {
		this.workbook = workbook;
	}
	public void exportExcel(){
		
		try {
			FileOutputStream fOut = new FileOutputStream("D:\\工作表编码.xls");
			
			HSSFSheet sheet1 = getWorkbook().createSheet();
			HSSFSheet sheet2 = getWorkbook().createSheet();
			
			getWorkbook().setSheetName(0,"工作表1",(short)1);
			getWorkbook().setSheetName(1,"工作表2",HSSFWorkbook.ENCODING_UTF_16);
			
			HSSFRow row1 = sheet1.createRow(0);
			HSSFRow row2 = sheet2.createRow(0);	
			
			HSSFCell cell1 = row1.createCell((short)0);
			HSSFCell cell2 = row1.createCell((short)1);
			HSSFCell cell3 = row2.createCell((short)0);
			
			cell1.setEncoding((short)1);
			cell2.setEncoding((short)1);
			cell3.setEncoding(HSSFWorkbook.ENCODING_UTF_16);
			
			cell1.setCellValue("中文那");
			cell2.setCellValue("还是中文那");
			cell3.setCellValue("还是中文好");
			
			workbook.write(fOut);
			fOut.flush();
			fOut.close();
			System.out.println("Excel文件已生成...");

		} catch (Exception e) {
			System.out.println("Excel文件生成失败: " + e);
		}
	}
	
	public static void main(String args[]){
		CreateXLS cxls = new CreateXLS();
		cxls.exportExcel();
	}
			
}

注:
1、编码只有两种,一个是ENCODING_COMPRESSED_UNICODE,对应于(short)0,另一个是ENCODING_UTF_16,
      对应于(short)1。

2、本例使用poi.2.5.1.jar,1.5版本的似乎没有ENCODING_UTF_16编码。
分享到:
评论

相关推荐

    poi生成excel实例

    7. "POI中文编码及多工作表输出.files"、"利用Java 创建和读取Excel文档.files"、"使用POI生成Excel文件,可以自动调整excel列宽(这个不错).files"、"使用POI生成Excel文件(详细).files":这些可能是与上述HTML...

    poi生成多个工作表例子下载(sheet)代码写在jsp上

    在这个例子中,我们将讨论如何使用 POI 在 JSP (JavaServer Pages) 中生成包含多个工作表的 Excel 文件。这对于数据导出或者批量报告生成非常有用。 首先,确保你的项目中已经包含了 Apache POI 库。如果还没有,你...

    用POI包导出数据的几种输出方式

    通过调用 `workbook.getSheetAt(index)` 可以获取指定索引的工作表。例如,`Sheet sheet = workbook.getSheetAt(0);` 获取第一个工作表。 3. **读取样式**: `CellStyle` 类用于定义单元格的样式,包括字体、颜色...

    poi导入导出及spring

    - **国际化支持:** 在处理包含非英文字符的数据时,要注意编码问题,避免乱码的情况发生。 ### 总结 Apache POI是一个非常强大的工具库,可以极大地简化Excel文件的读写操作。结合Spring框架的强大功能,可以构建...

    poi excel 模板读取并导出带公式的excel文档

    - 注意处理Excel文件的编码问题,避免中文乱码。 - 考虑到性能问题,如果数据量非常大,可能需要采取分批次处理的方式。 - 对于复杂的公式,建议先在Excel中测试其正确性,再应用于模板文件中。 综上所述,通过使用...

    poi_java_excel.zip_java 导出excel_poi excel_poi导出再导入excel中文_导出exce

    在本项目"poi_java_excel.zip"中,我们将重点探讨如何使用Apache POI处理Java导出Excel时可能出现的中文乱码问题,以及如何实现Excel的读取和导入。 首先,让我们深入理解Apache POI的基本用法。Apache POI提供了...

    POI导出操作Excel

    在代码中,首先创建了一个新的 `HSSFWorkbook` 实例,然后创建了一个名为 "Sheet1" 的工作表。 3. **HSSFCellStyle 和 HSSFDataFormat**: `HSSFCellStyle` 用于设置单元格的样式,如字体、颜色、对齐方式等。`...

    java操作Excel(Jakarta_POI)

    3. **国际化支持**:`Jakarta POI`支持多语言环境下的字符编码处理,但需要正确配置。 通过以上介绍,我们可以看出`Jakarta POI`为Java开发者提供了强大而灵活的Excel处理能力。无论是简单的读写操作还是复杂的报表...

    poi-3.8-20120326

    - 读取文档:通过WorkbookFactory.create方法打开现有文件,获取Sheet对象来访问工作表,再通过Row和Cell对象读取数据。 - 写入文档:创建并设置Row和Cell对象,然后将它们添加到Sheet中,最后保存更改。 - 格式...

    POI解析excel所需的包(更全)

    - **创建工作表**:通过工作簿对象,你可以创建多个工作表,每个工作表代表Excel的一个sheet。 - **操作单元格**:在工作表中,你可以创建行(Row)并添加单元格(Cell)。POI提供了多种类型的单元格,如数值型、...

    poi操作excel表格导入和导出

    2. 创建Sheet对象:Workbook对象包含多个Sheet,每个Sheet对应Excel的一个工作表。你可以通过调用Workbook的createSheet()方法创建新的Sheet。 3. 创建Row和Cell:在Sheet中,我们可以创建Row和Cell来存储数据。Row...

    POI 解析excel,转成html页面(支持excel03和07)包括style

    工作簿包含一个或多个工作表,我们需要遍历每个工作表,并将其转换为 HTML。 ```java for (Sheet sheet : workbook) { // 转换工作表为 HTML convertSheetToHtml(sheet, htmlWriter); } ``` 3. **转换工作...

    POI使用教程

    总结来说,这个POI教程展示了如何使用Java的Apache POI库来创建一个简单的Excel文件,包括设置HTTP响应头、创建工作簿和工作表、设置列宽、合并单元格、创建和格式化单元格,以及将工作簿写入HTTP响应流。...

    基于poi实现word/excel转换为HTML(且兼容.doc.docx.xls.xlsx)

    - 遍历工作簿中的每个工作表(XSSFSheet/HSSFSheet)。 - 解析单元格(XSSFCell/HSSFCell),获取值和格式信息。 - 转换单元格的样式,如边框、填充色、字体等,形成CSS规则。 - 构建HTML表格,包括`<table>`, `...

    POI操作EXCEL

    - 为了防止中文乱码问题,早期版本的POI需要手动设置单元格编码格式(如`setEncoding(HSSFCell.ENCODING_UTF_16)`),但在新版中已自动实现此功能。 通过以上介绍,我们可以看到Apache POI 3.7在处理Excel文件时的...

    ExtJS实现Excel的导出功能(poi)

    工作簿可以包含多个工作表,`HSSFSheet`表示单个工作表。在第7行代码中,创建了一个名为"targetStockList"的工作表。 4. **设置工作表属性**: 可以对工作表进行各种定制,如设置标题、调整列宽等。第9行设置了...

    poi导出excel

    1. **编码问题**:在设置文件名时,需要注意编码方式的转换,以免出现乱码。 2. **资源管理**:确保在完成文件操作后关闭所有打开的资源,避免内存泄漏。 3. **异常处理**:在实际开发中,需要对可能出现的异常进行...

    POI实现Java程序操作Excel报表的应用分析.pdf

    | HSSFSheet | 工作表对象 | | HSSFRow | 行对象 | | HSSFCell | 单元格对象 | POI的简单应用 下面是一个简单的POI应用示例,实现的主要功能是:使用表1中的对象在程序的当前目录下创建一个Excel文件test.xls,在...

Global site tag (gtag.js) - Google Analytics