如何使用POI *** 作Word文本框中的内容

如何使用POI *** 作Word文本框中的内容,第1张

在2003版本的的doc文件中,POI可以使用HWPF很方便的获取range,然后使用replace方法替换文本框中的内容,不过好像Word背景什么都没有了。在docx中,正常的文本段落还是比较方便替换的,但是遇到文本框中的文

兴趣点。

POI是“Point of Interest”的缩写,中文可以翻译为“兴趣点”。在地理信息系统中,一个POI可以是一栋房子、一个商铺、一个邮筒、一个公交站等。

传统的地理信息采集方法需要地图测绘人员采用精密的测绘仪器去获取一个兴趣点的经纬度,然后再标记下来。正因为POI的采集是一个非常费时费事的工作,对一个地理信息系统来说,POI的数量在一定程度代表着整个系统的价值。

每个POI包含四方面信息,名称、类别、坐标、分类,全面的POI讯息是丰富导航地图的必备资讯,及时的POI兴趣点能提醒用户路况的分支及周边建筑的详尽信息,也能方便导航中查到你所需要的各个地方,选择最为便捷和通畅的道路来进行路径规划。

扩展资料:

poi数据的应用:

1、帮助企业更好地捕捉到竞争对手的高价值客户。

能够得到用户的某种POI数据的话,那么就有可能知道用户在大概什么时间、到达了哪些机场、以及他出现在机场的频率高低;

这不但能够更加准确地判断用户作为航空公司客户的真正价值,甚至还能有针对性地设计出对于用户而言非常有吸引力的促销措施,让他更加有可能将更多的此类消费转移过来。

2、为商家提供对市场整体竞争环境的分析(选址)。

POI数据首先能够告诉我们,客户在一个地区的哪些酒店住宿、一年当中住宿的高峰时段和低谷时段是如何分布的。这些信息对于评估一个地区的行业发展趋势、决定未来在这一地区的发展策略

参考资料来源:百度百科-POI

抖音POI全称为Point Of Interest(兴趣点),通过LBS定位技术,让用户发布的视频挂上门店POI。

当用户点击POI进入门店信息页,即可获取门店地址、营业时间等信息,还可以直接领取品牌优惠券/活动券。同时,线下消费者在门店发布视频时,也可以链接该门店POI。

也就是说,POI是用户兴趣内容和门店的纽带,可以帮助品牌一键打通线上线下,实现闭环。

现在小程序可以直接链接到POI了,要是有不知道怎么 *** 作的商家,可以咨询即速应用,即速应用新推出的咫尺同城圈是一款专为商家提供综合生活服务信息、 本地头条资讯、同城生活社区的独立商圈小程序。

同城生活商圈与个体商户均可入驻,整合多行业资源,共享商圈精确流量,满足商家实现高效运营管理。

POI的含义:

1、POI的全称叫做Point Of Interest:兴趣点,你可以简单的理解为兴趣标签、入口。

2、POI地址是什么意思。通过抖音POI地址入口的扶持,大量的用户将被做大做强,POI变成用户兴趣爱好和线下推广门店的桥梁。

3、用户在点击进入这个入口之后,可以进入页面了解门店的地址、营业信息、优惠券领取等,和详情页有点类似。

4、对商家来说,POI地址就是让自己的门店增加了更多展示的地方,包括店铺地址、联系电话、营业时间,另外最重要的就是可以上传视频,来展示自己门店内的商品、服务等,借此来吸引用户到自己的门店消费。

5、同一个POI地址可以有多个门店商家同时申请,优先申请的商家拥有对后续申请者的审核权。

直接上源码:

package edusjtuerplabpoi;

import javaioFileInputStream;

import javaioFileNotFoundException;

import javaioIOException;

import javaioInputStream;

import javatextSimpleDateFormat;

import javautilDate;

import javautilHashMap;

import javautilMap;

import orgapachepoihssfusermodelHSSFCell;

import orgapachepoihssfusermodelHSSFDateUtil;

import orgapachepoihssfusermodelHSSFRow;

import orgapachepoihssfusermodelHSSFSheet;

import orgapachepoihssfusermodelHSSFWorkbook;

import orgapachepoipoifsfilesystemPOIFSFileSystem;

/

*** 作Excel表格的功能类

/

public class ExcelReader {

private POIFSFileSystem fs;

private HSSFWorkbook wb;

private HSSFSheet sheet;

private HSSFRow row;

/

读取Excel表格表头的内容

@param InputStream

@return String 表头内容的数组

/

public String[] readExcelTitle(InputStream is) {

try {

fs = new POIFSFileSystem(is);

wb = new HSSFWorkbook(fs);

} catch (IOException e) {

eprintStackTrace();

}

sheet = wbgetSheetAt(0);

row = sheetgetRow(0);

// 标题总列数

int colNum = rowgetPhysicalNumberOfCells();

Systemoutprintln("colNum:" + colNum);

String[] title = new String[colNum];

for (int i = 0; i < colNum; i++) {

//title[i] = getStringCellValue(rowgetCell((short) i));

title[i] = getCellFormatValue(rowgetCell((short) i));

}

return title;

}

/

读取Excel数据内容

@param InputStream

@return Map 包含单元格数据内容的Map对象

/

public Map<Integer, String> readExcelContent(InputStream is) {

Map<Integer, String> content = new HashMap<Integer, String>();

String str = "";

try {

fs = new POIFSFileSystem(is);

wb = new HSSFWorkbook(fs);

} catch (IOException e) {

eprintStackTrace();

}

sheet = wbgetSheetAt(0);

// 得到总行数

int rowNum = sheetgetLastRowNum();

row = sheetgetRow(0);

int colNum = rowgetPhysicalNumberOfCells();

// 正文内容应该从第二行开始,第一行为表头的标题

for (int i = 1; i <= rowNum; i++) {

row = sheetgetRow(i);

int j = 0;

while (j < colNum) {

// 每个单元格的数据内容用"-"分割开,以后需要时用String类的replace()方法还原数据

// 也可以将每个单元格的数据设置到一个javabean的属性中,此时需要新建一个javabean

// str += getStringCellValue(rowgetCell((short) j))trim() +

// "-";

str += getCellFormatValue(rowgetCell((short) j))trim() + " ";

j++;

}

contentput(i, str);

str = "";

}

return content;

}

/

获取单元格数据内容为字符串类型的数据

@param cell Excel单元格

@return String 单元格数据内容

/

private String getStringCellValue(HSSFCell cell) {

String strCell = "";

switch (cellgetCellType()) {

case HSSFCellCELL_TYPE_STRING:

strCell = cellgetStringCellValue();

break;

case HSSFCellCELL_TYPE_NUMERIC:

strCell = StringvalueOf(cellgetNumericCellValue());

break;

case HSSFCellCELL_TYPE_BOOLEAN:

strCell = StringvalueOf(cellgetBooleanCellValue());

break;

case HSSFCellCELL_TYPE_BLANK:

strCell = "";

break;

default:

strCell = "";

break;

}

if (strCellequals("") || strCell == null) {

return "";

}

if (cell == null) {

return "";

}

return strCell;

}

/

获取单元格数据内容为日期类型的数据

@param cell

Excel单元格

@return String 单元格数据内容

/

private String getDateCellValue(HSSFCell cell) {

String result = "";

try {

int cellType = cellgetCellType();

if (cellType == HSSFCellCELL_TYPE_NUMERIC) {

Date date = cellgetDateCellValue();

result = (dategetYear() + 1900) + "-" + (dategetMonth() + 1)

+ "-" + dategetDate();

} else if (cellType == HSSFCellCELL_TYPE_STRING) {

String date = getStringCellValue(cell);

result = datereplaceAll("[年月]", "-")replace("日", "")trim();

} else if (cellType == HSSFCellCELL_TYPE_BLANK) {

result = "";

}

} catch (Exception e) {

Systemoutprintln("日期格式不正确!");

eprintStackTrace();

}

return result;

}

/

根据HSSFCell类型设置数据

@param cell

@return

/

private String getCellFormatValue(HSSFCell cell) {

String cellvalue = "";

if (cell != null) {

// 判断当前Cell的Type

switch (cellgetCellType()) {

// 如果当前Cell的Type为NUMERIC

case HSSFCellCELL_TYPE_NUMERIC:

case HSSFCellCELL_TYPE_FORMULA: {

// 判断当前的cell是否为Date

if (HSSFDateUtilisCellDateFormatted(cell)) {

// 如果是Date类型则,转化为Data格式

//方法1:这样子的data格式是带时分秒的:2011-10-12 0:00:00

//cellvalue = cellgetDateCellValue()toLocaleString();

//方法2:这样子的data格式是不带带时分秒的:2011-10-12

Date date = cellgetDateCellValue();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

cellvalue = sdfformat(date);

}

// 如果是纯数字

else {

// 取得当前Cell的数值

cellvalue = StringvalueOf(cellgetNumericCellValue());

}

break;

}

// 如果当前Cell的Type为STRIN

case HSSFCellCELL_TYPE_STRING:

// 取得当前的Cell字符串

cellvalue = cellgetRichStringCellValue()getString();

break;

// 默认的Cell值

default:

cellvalue = " ";

}

} else {

cellvalue = "";

}

return cellvalue;

}

public static void main(String[] args) {

try {

// 对读取Excel表格标题测试

InputStream is = new FileInputStream("d:\\test2xls");

ExcelReader excelReader = new ExcelReader();

String[] title = excelReaderreadExcelTitle(is);

Systemoutprintln("获得Excel表格的标题:");

for (String s : title) {

Systemoutprint(s + " ");

}

// 对读取Excel表格内容测试

InputStream is2 = new FileInputStream("d:\\test2xls");

Map<Integer, String> map = excelReaderreadExcelContent(is2);

Systemoutprintln("获得Excel表格的内容:");

for (int i = 1; i <= mapsize(); i++) {

Systemoutprintln(mapget(i));

}

} catch (FileNotFoundException e) {

Systemoutprintln("未找到指定路径的文件!");

eprintStackTrace();

}

}

}

以上就是关于如何使用POI *** 作Word文本框中的内容全部的内容,包括:如何使用POI *** 作Word文本框中的内容、poi是什么意思、抖音poi是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9307406.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存