资源简介
手机号归属地查询,JAVA工具类,附带SDK包,附带源码,附带数据源,支持超大文本解析
代码片段和文件信息
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.StringReader;
import com.alibaba.fastjson.JSONReader;
/**
* 手机号码归属工具类
*
* @author MYL
*/
public class PhoneNumAddress {
/**
* 读取文本JSON
*
* @param filePath
* @return
*/
public static String readTxt(String filePath) {
StringBuilder sb = new StringBuilder();
try {
File file = new File(filePath);
if (file.isFile() && file.exists()) {
InputStreamReader isr = new InputStreamReader(
new FileInputStream(file) “GBK“);
BufferedReader br = new BufferedReader(isr);
String lineTxt = null;
while ((lineTxt = br.readLine()) != null) {
sb.append(lineTxt);
}
br.close();
} else {
System.out.println(“文件不存在!“);
}
} catch (Exception e) {
System.out.println(“文件读取错误!“);
}
return sb.toString();
}
/**
* 归属地查询(利用FastJson解析检索内容)
*
* @param jsonString
* @param str
*/
@SuppressWarnings(“resource“)
public static void fastParseJson(String jsonString String str) {
String str2 = ““;
// 打印标识 0:关闭1启动
int startPrint = 0;
JSONReader reader = new JSONReader(new StringReader(jsonString));
// 读取list数组
reader.startArray();
while (reader.hasNext()) {
// 打印次数
int countPrint = 4;
// 读取对象
reader.startobject();
while (reader.hasNext()) {
// 把所有双引号包含内容读取成key 例:{“name“:“张三““sex“:“男“} key={namesex}
String arrayListItemKey = reader.readString();
// 获取的key的键值 例:{“name“:“张三““sex“:“男“} value={张三男}
String arrayListItemValue = reader.readobject().toString();
if (arrayListItemKey.equals(“CODE“)) {
if (arrayListItemValue.equals(str.substring(0 7))) {
// 启动打印
startPrint = 1;
}
}
// 打印拼接功能
if (startPrint == 1 && countPrint > 0) {
// System.out.print(arrayListItemKey + “:“ +
// arrayListItemValue + ““);
str2 += “\““+arrayListItemKey + “\“:\““ + arrayListItemValue + “\““;
// 减少打印次数
countPrint--;
}
// 停止打印程序结束
if (countPrint == 0) {
// System.out.println();
System.out.println(“{“+str2.substring(0 str2.length() - 1)+“}“);
return;
}
}
reader.endobject();
}
reader.endArray();
System.out.println(“字典中不存在“);
}
/*
* 超大文本解析工具类 需要 fastjson-1.2.51.jar
*/
public static void main(String[] args) {
String a = “1709804“;
String dic = readTxt(“D:\\Users\\Desktop/ss.dat“);
PhoneNumAddress.fastParseJson(dic a + “1234“);
}
}
- 上一篇:Java飞机大战源码
- 下一篇:图书管理系统Java开发源代码+mysql数据库
相关资源
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
评论
共有 条评论