CpFileRead.java 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package com.miniframe.tools.file;
  2. import com.google.gson.Gson;
  3. import com.miniframe.core.ext.UtilTools;
  4. import com.miniframe.model.mdo.MdoProComval;
  5. import com.miniframe.model.mdo.MdoProComvalSQLBuilder;
  6. import com.miniframe.model.mdo.dao.MdoProComvalMapper;
  7. import com.miniframe.websocket.WebsocketEndPoint;
  8. import java.io.BufferedReader;
  9. import java.io.File;
  10. import java.io.FileReader;
  11. import java.io.IOException;
  12. import java.util.List;
  13. public class CpFileRead {
  14. public static void readFile(File file, String pid) {
  15. String line1="";
  16. MdoProComvalMapper comvalDao = UtilTools.getBean(MdoProComvalMapper.class);
  17. MdoProComvalSQLBuilder sb =new MdoProComvalSQLBuilder();
  18. MdoProComvalSQLBuilder.Criteria sc = sb.createCriteria();
  19. sc.andPidEqualTo(pid);
  20. sc.andTypeEqualTo(3);
  21. sb.setOrderByClause("step asc");
  22. comvalDao.deleteByExample(sb);
  23. int con =0;
  24. // if(comvals!=null||!comvals.isEmpty()){
  25. // con=comvals.size();
  26. // }
  27. int i= 0;
  28. String line;
  29. // 使用try-with-resources语句确保资源被正确关闭
  30. try (BufferedReader br = new BufferedReader(new FileReader(file))) {
  31. // 逐行读取,直到文件末尾
  32. while ((line = br.readLine()) != null) {
  33. if(i ==0){
  34. line=line.trim().replaceAll("#"," ");//替换多个空格为一个空格
  35. line=line.trim().replaceAll("\\s+"," ");//替换多个空格为一个空格
  36. line=line.replace(" / ","/");
  37. line1=line.replace("阻力系数Cdconstraint","阻力系数Cd constraint");
  38. // 处理每一行数据
  39. System.out.println(line);
  40. }
  41. // if(!line.endsWith("\n")){
  42. // break;
  43. // }
  44. if(i>con){
  45. String tvals=line.trim().replaceAll("\\s+"," ");//替换多个空格为一个空格
  46. MdoProComval comval =new MdoProComval();
  47. comval.setId(UtilTools.getUUid());
  48. comval.setPid(pid);
  49. comval.setStep(i);
  50. comval.setVars(line1);
  51. comval.setVals("x/c -Cp");
  52. comval.setType(3);//"1-列表数据 2-几何数据 3-压力数据"
  53. comval.setGser(1);
  54. comvalDao.insert(comval);
  55. WebsocketEndPoint webs = (WebsocketEndPoint) UtilTools.getBean("websocketEndPoint");
  56. Gson gson = new Gson();
  57. webs.sendMessageToUser(String.valueOf(pid),gson.toJson(comval));
  58. }
  59. i++;
  60. }
  61. } catch (IOException e) {
  62. // 异常处理
  63. e.printStackTrace();
  64. }
  65. }
  66. }