联通一般提供的号段都是xls表格,我们使用时需要把他转化成号段,地区,这样的格式方便查找和管理。
实现读取xls表格,然后根据表格中的内容分解。合成自己需要的内容。
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import java.io.File;
import java.io.IOException;
import java.util.Vector;
/**
*
* @author lijunjie
*
* 第一列是城市名称
* 第零行是号段前缀
* 根据运营商提供的xls表格
* 生成可插入数据库的规范号段
*/
public class ReadXls {
int cols=44;
int rows=13;
private Vector mobilelists=new Vector();
public void readContent()
{
Workbook workbook=null;
try {
workbook = Workbook.getWorkbook(new File("c:\\tddownload\\g.xls"));
} catch (BiffException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Sheet sheet=workbook.getSheet(0);
for(int i=2;i<cols;i++)
{
for(int j=2;j<rows;j++)
{
String preffix=getContent(sheet,i,0);
preffix=preffix.replaceAll("H1H2H3","");
String city=getContent(sheet,1,j);
if(!preffix.trim().equals("")&&!preffix.trim().equals("地市"))
createContentBySplit(getContent(sheet,i,j),city,preffix);
}
}
workbook.close();
}
/**
* 获取i列j行的数据
* @param sheet
* @param i
* @param j
* @return
*/
public String getContent(Sheet sheet,int i,int j)
{
Cell c2=sheet.getCell(i,j);
return c2.getContents();
}
/**
* 根据子号段类型,选择叠加还是直接添加前缀和城市列表
* @param content
* @param city
* @param preffix
*/
public void createContent(String content,String city,String preffix)
{
String tmp="";
if(content.indexOf("-")>0)
{
String[] nums=content.split("-");
try
{
int start=Integer.parseInt(nums[0]);
int end=Integer.parseInt(nums[1]);
for(int i=start;i<=end;i++)
{
mobilelists.add(city+","+preffix+i);
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
else
{
mobilelists.add(city+","+preffix+content);
}
}
/**
* 将取得号段整理,分解成可处理的号段
* @param content
* @param city
* @param preffix
*/
public void createContentBySplit(String content,String city,String preffix)
{
content=content.replaceAll("、",",");
content=content.replaceAll(" ",",");
content=content.replaceAll(",",",");
String[] nums=content.split(",");
for(int i=0;i<nums.length;i++)
{
if(!nums[i].trim().equals(""))
createContent(nums[i],city,preffix);
}
}
/**
* 打印号段表
*/
public void printMobile()
{
for(int i=0;i<mobilelists.size();i++)
{
System.out.println(mobilelists.get(i));
}
}
public static void main(String[] args)
{
ReadXls rx=new ReadXls();
rx.readContent();
rx.printMobile();
}
}
- 大小: 10.9 KB
- 大小: 3.2 KB
分享到:
相关推荐
xls表格转化为edb数据库.rar xls表格转化为edb数据库.rar xls表格转化为edb数据库.rar xls表格转化为edb数据库.rar xls表格转化为edb数据库.rar xls表格转化为edb数据库.rar
易语言xls表格转化为易语言edb数据库.rar 易语言xls表格转化为易语言edb数据库.rar 易语言xls表格转化为易语言edb数据库.rar 易语言xls表格转化为易语言edb数据库.rar 易语言xls表格转化为易语言edb数据库.rar ...
在标题为“xls表格转化为易语言edb数据库”的主题中,我们关注的是如何将常见的Excel表格数据转换为易语言支持的数据库格式,即EDB(EasyDatabase)数据库。易语言是一种中文编程语言,设计目标是简化编程过程,使...
虚拟运营商号段指的是这些非传统运营商分配到的手机号码段,它们在市场中以特定的号码开头,让用户能够识别出这是由哪个虚拟运营商提供的服务。例如,某些虚拟运营商可能获得170、171或165等开头的号段,这些不同于...
总的来说,将xls表格转化为edb数据库是一个涉及文件读取、数据解析、数据库操作和编程技巧的综合任务。通过这个过程,可以学习到易语言编程、文件处理和数据库管理的相关知识,提高解决问题的能力。在实际应用中,...
在本压缩包“易语言源码xls表格转化为易语言edb数据库.rar”中,包含的是一个易语言的源代码项目,其主要功能是将Excel(xls)格式的表格数据转换成易语言支持的edb数据库。 Excel是一种广泛使用的电子表格应用程序...
xls表格转化为易语言edb数据库.zip易语言项目例子源码下载xls表格转化为易语言edb数据库.zip易语言项目例子源码下载 1.合个人学习技术做项目参考 2.适合学生做毕业设计参考 3.适合小团队开发项目参考
本教程将详细讲解如何将XLS表格转换为易语言支持的EDB数据库,以便更好地在易语言程序中管理和操作数据。 首先,我们需要了解XLS表格和EDB数据库的基本概念。XLS是Microsoft Excel的一种文件格式,用于存储和展示...
本压缩包“易语言源码xls表格转化为edb数据库.rar”包含了使用易语言进行数据处理的源代码,主要功能是将Excel(xls)格式的表格数据转换为edb数据库文件。 首先,我们需要了解Excel(xls)文件。Excel是Microsoft ...
2019年中国白领群体对联通运营商满意因素分布.xls
运营方案.xls
表格模板-办公物品管理表格.xls
xls2csv可以将XLS文件转化为CSV文件
CMK计算表格.xls
通过本源码可以讲xls表格中的数据导入mysql中。 上传前经过再次测试成功。 使用说明: 1、修改conn.php文件中的数据库连接 2、按照Book1.xls的格式准备要导入的数据 3、修改insert.php的 数据库名,同时修改该文件...
标题中的“行业数据-2019年中国白领群体对...综上所述,这份报告为深入了解2019年中国联通在白领用户群体中的表现提供了宝贵的资料,有助于运营商调整策略,提升服务质量,同时也能为行业研究者、政策制定者提供参考。
QC查料表(表格模板、XLS格式).xls
javascript导出xls表格,方便快捷,只需指定表头,数据,文件名。