123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- 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 CRMFileRead {
- public static void readFile(File file, String pid) {
- MdoProComvalMapper comvalDao = UtilTools.getBean(MdoProComvalMapper.class);
- MdoProComvalSQLBuilder sb =new MdoProComvalSQLBuilder();
- MdoProComvalSQLBuilder.Criteria sc = sb.createCriteria();
- sc.andPidEqualTo(pid);
- sc.andTypeEqualTo(2);
- sb.setOrderByClause("step asc");
- List<MdoProComval> comvals =comvalDao.selectByExample(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))) {
- int size=0;
- // 逐行读取,直到文件末尾
- while ((line = br.readLine()) != null) {
- line=line.trim().replaceAll("\\s+"," ").trim();//替换多个空格为一个空格
- if(line.startsWith("Zone")||line.startsWith("Title")){
- continue;
- }
- if(line.startsWith("DATAPACKING")){
- continue;
- }
- if(line.startsWith("Variables")){
- // line=line.replace("\"","");
- // line=line.replace("Variables =","").trim();
- continue;
- }
- if(line.startsWith("Nodes")){
- line=line.replace("Nodes = ","").trim();
- size =Integer.valueOf(line.split(" ")[0]);
- continue;
- }
- if(i>=size){
- break;
- }
- if(i>con && i<size){
- String[] vals = line.split(" ");
- MdoProComval comval =new MdoProComval();
- comval.setId(UtilTools.getUUid());
- comval.setPid(pid);
- comval.setStep(i);
- comval.setVars("v1 v2");
- comval.setVals(vals[0]+" "+vals[1]);
- comval.setType(2);//"1-列表数据 2-几何数据 3-压力数据"
- comvalDao.insert(comval);
- WebsocketEndPoint webs = (WebsocketEndPoint) UtilTools.getBean("websocketEndPoint");
- Gson gson = new Gson();
- webs.sendMessageToUser(String.valueOf(pid),gson.toJson(comval));
- MdoProComval comval2 =new MdoProComval();
- comval2.setId(UtilTools.getUUid());
- comval2.setPid(pid);
- comval2.setStep(i);
- comval2.setVars("x cp");
- comval2.setVals(vals[0]+" "+vals[9]);
- comval2.setType(3);//"1-列表数据 2-几何数据 3-压力数据"
- comvalDao.insert(comval2);
- webs.sendMessageToUser(String.valueOf(pid),gson.toJson(comval2));
- }
- i++;
- }
- } catch (IOException e) {
- // 异常处理
- e.printStackTrace();
- }
- }
- }
|