老规矩直接上代码:
public static void main(String[] args) {
//这个文件是从服务器上拉下来的SQL数据
File file = new File("D:\\logs\\now\\00000464_9_2022-08-16.txt");
try{
//开始读取
FileInputStream inputStream=new FileInputStream(file);
InputStreamReader reader = new InputStreamReader(inputStream, "UTF-8");
BufferedReader br = new BufferedReader(reader);
String lineTxt = "";
int j=0;
int i=9;
FileOutputStream fop = new FileOutputStream("D:\\logs\\now\\res"+i+".txt");
OutputStreamWriter writer=new OutputStreamWriter(fop,"UTF-8");
//writer
while ((lineTxt = br.readLine()) != null) {
String[] s = lineTxt.split("\t");
String account = s[0];
String favourid="";
if (s[1].length()>30) {
favourid = s[1].replaceAll("00000", "x7");
}
//拼接update语句
String sql="update t_favour_res"+i+" set favourid ='"+favourid+"' where account='"+account+"' and favourid='"+s[1]+"';";
System.out.println(sql);
j++;
//写入新的文件,写入完成后直接打开新文件复制批量执行sql即可
writer.append(sql);
writer.append("\r\n");
}
System.out.println("行数:"+j);
br.close();
reader.close();
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("完成.......................................");
}