解析固定格式txt文件插入数据库
来源:互联网 发布:机柜网络模块 编辑:程序博客网 时间:2024/04/29 02:51
朝阳区
车龙汽车装饰(望京店)
南湖西园502号院中广宜景湾底商
4000052365
null
8:30-18:30
39.904214, 116.40741300000002
昌平区
京杰汽车服务
文华路龙锦苑四区2号楼底商
010-81746257
null
尚无营业时间
40.0822929, 116.34415969999998
丰台区
贝贝鱼汽车座套
公益西桥城南大道2座801室
18600019317
null
8:00—18:00
39.835887, 116.37078099999996
丰台区
金诚都汽车用品商行(草桥店)
草桥汇丰汽配城5排13号
010-51751365
null
尚无营业时间
39.904214, 116.40741300000002
大兴区
龙百特汽车用品
黄鹅路3号
010-52837324
null
早8:30—晚4:30
39.7524077, 116.28156289999992
海淀区
琪朗汽车美容中心(清河店)
清河小营环岛西北侧通厦汽配城1楼109号
010-60605109
null
8:30——18:00
40.0287122, 116.36658820000002
------------------------------------------------------------------------------------------------------------
小部分固定txt文件
代码实现思路
1.逐行读取txt文件加入到list集合
2.循环list集合 把数据封装到bean类中
3.由于信息有7行第8行是空格 bean定义8个属性 循环给BEAN类赋值
4.把赋值后的对象加入list集合中 把属性list清空 变量赋值 continue重新赋值
5.返回对象集合
public List<ShopInfo> readFile(String file){//String file 为文件路径
List list=new ArrayList();//保存每组信息的list集合
List<ShopInfo> shopList=new ArrayList<ShopInfo>();//保存shopinfo对象的集合
ShopInfo shop =null;
int count=1;//定义循环的变量
String line;
File f = new File(file);
try {
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);
//逐行读取
while((line = br.readLine())!=null){
list.add(line);
count++;
if(count%9==0){
//循环创建对象并赋值
shop=new ShopInfo();
shop.setDistrict((String)list.get(0));
shop.setName((String)list.get(1));
shop.setAddress((String)list.get(2));
shop.setPhone((String)list.get(3));
shop.setTel((String)list.get(4));
shop.setOpenTime((String)list.get(5));
shop.setShopInMap((String)list.get(6));
/*shop.setEmpty((String)list.get(7));*/
shopList.add(shop);
list=new ArrayList();
count=1;
continue;
}
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return shopList;
}
6.返回对象集合后遍历集合 循环中取各个属性 编写sql语句 把属性插入的sql语句中 调用操作数据库底层代码完成循环插入
@Override
public void doSave(String fileName) {
// TODO Auto-generated method stub
FileReaderDao readerDao=new FileReaderDaoImpl();
List<ShopInfo>list=readerDao.readFile(fileName);
for(int i=0;i<list.size();i++){
String str=list.get(i).getAddress();
String district=list.get(i).getDistrict();
String Name=list.get(i).getName();
String Address=list.get(i).getAddress();
String Phone=list.get(i).getPhone();
String Tel=list.get(i).getTel();
String OpenTime=list.get(i).getOpenTime();
String ShopInMap=list.get(i).getShopInMap();
String Empty=list.get(i).getEmpty();
String sql="insert into shopinfo values(shop_id.nextval,'"+district+"','"+Name+"','"+Address+"','"+Phone+"','"+Tel+"','"+OpenTime+"','"+ShopInMap+"','"+Empty+"')";
System.out.println(sql);
super.executeUpdate(sql, null);
}
}
7以后相同类型格式的文件只要修改文件所在位置String fileName就可以了
8.刚刚实现业务逻辑 还将继续修改方法 使功能更加灵活快速
- 解析固定格式txt文件插入数据库
- TXT文件编码格式解析
- txt文件内容,插入到数据库。
- txt文件插入数据到数据库
- java将数据写入到txt文件中(txt有固定的格式)
- 解析固定格式的文件数据 php脚本
- java解析txt文件的内容然后插入mysql
- 向Sql Server数据库中导入固定格式的txt文本数据
- 对于解析txt 格式的的文件BufferedReader
- 用c将固定格式的txt文件中的信息读取出来
- JDBC批量插入txt文件中的内容到数据库
- php读取txt文件并将数据插入到数据库
- php读取txt文件并将数据插入到数据库
- php读取txt文件并将数据插入到数据库
- XML解析使用固定格式解析本地与解析Tomcat服务器上面的xml文件
- perl解析日志文件并插入数据库
- 如何把txt格式的记录插入到Mysql数据库中
- java解析txt文件
- C++11中值得关注的几大变化
- VS中TODO注释的使用
- A*算法
- 证件照片是红底,还是蓝底?这其中有什么讲究?
- 腾讯笔试
- 解析固定格式txt文件插入数据库
- memcached和spring集成
- 第一篇文章
- Extjs htmleditor中内容导出成word (一)
- 关于 ORA-22905: cannot access rows from a non-nested table item
- 使用opt_param 提示来预览修改优化器相关参数的优化效果
- JS中showModalDialog参数传递
- 添加一个多组播
- solrj 查询SolrServer的一般流程