import java.io.FileOutputStream;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFDataFormat;
import org.apache.poi.hssf.usermodel.HSSFComment;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
public class PoiCreateExcelTest ...{
public static void main(String[] args) ...{
/** *//**
* @see <a href="http://poi.apache.org/hssf/quick-guide.html#NewWorkbook">For more</a>
*/
// 创建新的Excel 工作簿
HSSFWorkbook workbook = new HSSFWorkbook();
// 在Excel工作簿中建一工作表,其名为缺省值, 也可以指定Sheet名称
HSSFSheet sheet = workbook.createSheet();
//HSSFSheet sheet = workbook.createSheet("SheetName");
// 用于格式化单元格的数据
HSSFDataFormat format = workbook.createDataFormat();
// 创建新行(row),并将单元格(cell)放入其中. 行号从0开始计算.
HSSFRow row = sheet.createRow((short) 1);
// 设置字体
HSSFFont font = workbook.createFont();
font.setFontHeightInPoints((short) 20); //字体高度
font.setColor(HSSFFont.COLOR_RED); //字体颜色
font.setFontName("黑体"); //字体
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); //宽度
font.setItalic(true); //是否使用斜体
// font.setStrikeout(true); //是否使用划线
// 设置单元格类型
HSSFCellStyle cellStyle = workbook.createCellStyle();
cellStyle.setFont(font);
cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); //水平布局:居中
cellStyle.setWrapText(true);
// 添加单元格注释
// 创建HSSFPatriarch对象,HSSFPatriarch是所有注释的容器.
HSSFPatriarch patr = sheet.createDrawingPatriarch();
// 定义注释的大小和位置,详见文档
HSSFComment comment = patr.createComment(new HSSFClientAnchor(0, 0, 0, 0, (short)4, 2, (short) 6, 5));
// 设置注释内容
comment.setString(new HSSFRichTextString("可以在POI中添加注释!"));
// 设置注释作者. 当鼠标移动到单元格上是可以在状态栏中看到该内容.
comment.setAuthor("Xuys.");
// 创建单元格
HSSFCell cell = row.createCell((short) 1);
HSSFRichTextString hssfString = new HSSFRichTextString("Hello World!");
cell.setCellValue(hssfString);//设置单元格内容
cell.setCellStyle(cellStyle);//设置单元格样式
cell.setCellType(HSSFCell.CELL_TYPE_STRING);//指定单元格格式:数值、公式或字符串
cell.setCellComment(comment);//添加注释
//格式化数据
row = sheet.createRow((short) 2);
cell = row.createCell((short) 2);
cell.setCellValue(11111.25);
cellStyle = workbook.createCellStyle();
cellStyle.setDataFormat(format.getFormat("0.0"));
cell.setCellStyle(cellStyle);
row = sheet.createRow((short) 3);
cell = row.createCell((short) 3);
cell.setCellValue(9736279.073);
cellStyle = workbook.createCellStyle();
cellStyle.setDataFormat(format.getFormat("#,##0.0000"));
cell.setCellStyle(cellStyle);
sheet.autoSizeColumn((short)0); //调整第一列宽度
sheet.autoSizeColumn((short)1); //调整第二列宽度
sheet.autoSizeColumn((short)2); //调整第三列宽度
sheet.autoSizeColumn((short)3); //调整第四列宽度
try ...{
FileOutputStream fileOut = new FileOutputStream("C:\3.xls");
workbook.write(fileOut);
fileOut.close();
} catch (Exception e) ...{
System.out.println(e.toString());
}
}
}
最后自动调整列宽的代码是在找了好久以后不经意间找着的,很惊喜!
如果编译器提示没有autoSizeColumn这个方法,那可能是你的poi版本太低的缘故,我用的是poi3.0版本
分享到:
相关推荐
2. **POI属性**: 当处理单元格时,我们可能会遇到的属性包括: - `CellStyle`: 定义单元格的样式,如字体、颜色、对齐方式、边框等。 - `Hyperlink`: 创建超链接。 - `DataFormat`: 定义数值或日期的显示格式。...
poi|信息点|高德poiPOI是“Point of Interest”的缩写,中文可以翻译为“兴趣点”。...csv/tab/shp/access等格式最专业的科研poi 各年份poi属性相同 数据分析效率提高60% 课题poi | 科研poi | 论文poi
Excel是一种电子表格软件,适合处理和组织结构化数据,如地址、电话号码、分类等POI属性。与shp格式相比,Excel更适合非GIS用户查看和分析数据,但可能不包含空间坐标信息。 综合以上信息,这个数据集为研究者、...
在本篇中,我们将详细探讨如何利用Apache POI库来修改文件属性并进行格式转换。 首先,让我们看看如何使用POI修改文件属性。在Microsoft Office文档中,文件属性通常包括标题、作者、创建日期等元数据。以下是如何...
poi导出导入封装(使用注解建立实体与excel映射关系+反射设置实体属性值), poi导出导入封装(使用注解建立实体与excel映射关系+反射设置实体属性值) poi导出导入封装(使用注解建立实体与excel映射关系+反射设置...
提供5.6亿条(2005年至今)安全可靠poi大数据,为科研院所提供大数据支撑,提高80%的分析效率。2005年-2020年 百度POI 高德POI 20+ 项大类 200+项中类 1000+项小类 csv/tab/shp/access等格式 ...属性相同
这些数据通常包括位置坐标(经纬度)、名称、地址、电话、营业时间等属性,可以帮助开发者实现导航、搜索、推荐等功能。通过百度地图API,开发者可以方便地接入这些数据,为自己的应用或服务提供地理位置相关的功能...
2021年全国医疗分布POI数据,包含字段服务点名称,坐标等信息,格式为shpfile 2021年全国医疗分布POI数据,包含字段服务点名称,坐标等信息,格式为shpfile 2021年全国医疗分布POI数据,包含字段服务点名称,坐标等...
POI(一般作为Point of Interest的缩写,也有Point of Information的说法),通常称作兴趣点,泛指互联网电子地图中的点位数据,比如餐馆、商店、咖啡店、加油站等,一般包含名称、地址、坐标、类别四个属性。...
在批量导入导出过程中,POI允许程序创建、修改和保存Excel文件,包括设置工作表、单元格的各种属性。例如,可以创建新的工作簿,添加工作表,设定单元格的值,设置单元格样式,甚至处理公式和图表。这使得Java应用...
2. POI属性组织优化:为了提高检索效率,添加了GeoHash字段,利用其前缀匹配特性进行空间范围的快速检索。同时,将经纬度坐标转换为莫顿码,简化了空间计算的过程。通过调整GeoHash的长度,可以控制空间分辨率,达到...
在GIS中,POI数据的管理涉及到坐标系统的选择、分类体系的建立、属性信息的定义等技术细节。同时,POI数据的更新和维护也是一项持续的工作,以确保信息的准确性和时效性。 从压缩包子文件的文件名称“POI”来看,很...
在提供的文件列表中,可以看到不同类型的POI都有对应的这些文件,例如“深圳市体育休闲服务.shp”是体育休闲服务的几何数据,“深圳市餐饮服务.dbf”则包含餐饮服务的属性信息。 "WGS84坐标系"是一个全球通用的大地...
2. 温州市POI.dbf:这是Shapefile的一部分,它是一个结构化的表格数据库,存储了每个地理特征的相关属性信息,如POI的名称、类型、营业时间等。 3. 温州市POI.prj:这个文件定义了数据的坐标系统,是GIS数据的重要...
在这个案例中,每行数据可能代表一个具体的POI,包含各种属性字段,如POI的名称、坐标(经度和纬度)、所属类别、营业时间等。用户可以通过Excel的内置功能或与其他编程语言(如Python的pandas库)结合,进行数据...
4. **样式和格式**:POI提供了CellStyle类,允许你设置字体、颜色、边框、对齐方式等样式属性。Font类则用于定义字体属性,如大小、粗体、斜体等。 5. **公式和计算**:如果你需要处理含有公式的单元格,可以使用...
在POI中,这些可以通过`Section`对象的属性进行调整。例如,`Section`的`setPageStart()`方法可以设置页码起始值,`setLeftMargin()`和`setRightMargin()`可以设置左右边距。 6. **完整流程** 生成Word文档的完整...
2. **数据结构与格式**:在压缩包中,"POI"可能是数据文件的名称,通常POI数据以表格形式存储,如CSV、Excel或数据库文件(如SQLite、MySQL),每条记录代表一个POI实体,包含各类属性字段。字段可能有“名称”、...
南京市的POI(Point of Interest)数据是一种地理信息数据,用于表示城市中的兴趣点,如餐馆、商场、公园、学校等。这些数据在GIS(地理信息系统)中具有重要作用,能够帮助用户快速找到所需的服务和设施。Shape文件...