package com.miniframe.tools.file; import com.google.gson.Gson; import com.miniframe.core.ext.UtilTools; import com.miniframe.model.mdo.MdoProComval; import com.miniframe.model.mdo.MdoProComvalSQLBuilder; import com.miniframe.model.mdo.dao.MdoProComvalMapper; import com.miniframe.websocket.WebsocketEndPoint; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException; import java.util.List; public class CpFileRead { public static void readFile(File file, String pid) { String line1=""; MdoProComvalMapper comvalDao = UtilTools.getBean(MdoProComvalMapper.class); MdoProComvalSQLBuilder sb =new MdoProComvalSQLBuilder(); MdoProComvalSQLBuilder.Criteria sc = sb.createCriteria(); sc.andPidEqualTo(pid); sc.andTypeEqualTo(3); sb.setOrderByClause("step asc"); comvalDao.deleteByExample(sb); int con =0; // if(comvals!=null||!comvals.isEmpty()){ // con=comvals.size(); // } int i= 0; String line; // 使用try-with-resources语句确保资源被正确关闭 try (BufferedReader br = new BufferedReader(new FileReader(file))) { // 逐行读取,直到文件末尾 while ((line = br.readLine()) != null) { if(i ==0){ line=line.trim().replaceAll("#"," ");//替换多个空格为一个空格 line=line.trim().replaceAll("\\s+"," ");//替换多个空格为一个空格 line=line.replace(" / ","/"); line1=line.replace("阻力系数Cdconstraint","阻力系数Cd constraint"); // 处理每一行数据 System.out.println(line); } // if(!line.endsWith("\n")){ // break; // } if(i>con){ String tvals=line.trim().replaceAll("\\s+"," ");//替换多个空格为一个空格 MdoProComval comval =new MdoProComval(); comval.setId(UtilTools.getUUid()); comval.setPid(pid); comval.setStep(i); comval.setVars(line1); comval.setVals("x/c -Cp"); comval.setType(3);//"1-列表数据 2-几何数据 3-压力数据" comval.setGser(1); comvalDao.insert(comval); WebsocketEndPoint webs = (WebsocketEndPoint) UtilTools.getBean("websocketEndPoint"); Gson gson = new Gson(); webs.sendMessageToUser(String.valueOf(pid),gson.toJson(comval)); } i++; } } catch (IOException e) { // 异常处理 e.printStackTrace(); } } }