接口调用,参数是String类型滴,怎么一行一行解析出来插入到数据库里面。 50

其中“|”是区分滴,一行一行代表数据对应数据库里面的字段,怎么一行一行解析出来插入数据库里面。这是String类型滴。... 其中“|”是区分滴,一行一行代表数据对应数据库里面的字段,怎么一行一行解析出来插入数据库里面。这是String类型滴。 展开
 我来答
谷峰year
2013-10-21
知道答主
回答量:20
采纳率:0%
帮助的人:13万
展开全部
根据字符串分割函数,先将这些数据转化为datatable类型,然后插入数据库。之前实现过,但是现在忘了,具体的思路就是这个样子。你自己可以试着实现一下。。。。不知你是否满意?
追问
大哥 是java的问题,能给具体点吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大陆名广
2013-10-22 · 超过10用户采纳过TA的回答
知道答主
回答量:36
采纳率:100%
帮助的人:21.1万
展开全部

希望对你有所帮助

package com.test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
import java.util.ArrayList;
import java.util.List;
public class test1 {
 public static void main(String[] args) throws IOException {
  String filePath = "E:\\123.txt";
  String encoding = "GBK";
  File file = new File(filePath);
  if (file != null && file.exists()) {
   Reader reader = new InputStreamReader(new FileInputStream(file),
     encoding);
   BufferedReader buff = new BufferedReader(reader);
   String line = null;
   String[] lineAry = null;
   ABC abc = null;
   List<ABC> dataList = new ArrayList<ABC>();
   while ((line = buff.readLine()) != null) {
    abc = new ABC();
    System.out.println(line);
    lineAry = line.split("\\|");
    abc.setA(lineAry[0]);
    abc.setB(lineAry[1]);
    abc.setC(lineAry[2]);
    dataList.add(abc);
   }
  }
 }
}
class ABC {
 private String a;
 private String b;
 private String c;
 public String getA() {
  return a;
 }
 public void setA(String a) {
  this.a = a;
 }
 public String getB() {
  return b;
 }
 public void setB(String b) {
  this.b = b;
 }
 public String getC() {
  return c;
 }
 public void setC(String c) {
  this.c = c;
 }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小狂中E
2013-10-22 · TA获得超过1418个赞
知道大有可为答主
回答量:1514
采纳率:66%
帮助的人:1022万
展开全部
全写出来太多了,写几点吧
1、高效读文件
BufferedReader br=new BufferedReader(new InputStreamReader("file","encoding"));
String line = br.readLine(); //读一行
2、高效将一行分隔成列数据
StringTokenizer st = new StringTokenizer(line, "|");
while(st.hasMoreTokens() ){
String token = st.nextToken(); //|分隔的列数据
3、高效插入数据库,使用预解析语句减少数据库分析时间
PreparedStatement ps = conn.prepareStatement("insert into table values(?,?,....)");
ps.setObject(paramIndex, value); //为第paramIndex参数设置值
每一行设好参数后调用 ps.addBatch(); //批量提交
ps.executeUpdate(); //执行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式