diff --git a/pqs-common/common-event/src/main/java/com/njcn/event/file/component/WaveFileComponent.java b/pqs-common/common-event/src/main/java/com/njcn/event/file/component/WaveFileComponent.java index eddf4a7b2..c876b8f49 100644 --- a/pqs-common/common-event/src/main/java/com/njcn/event/file/component/WaveFileComponent.java +++ b/pqs-common/common-event/src/main/java/com/njcn/event/file/component/WaveFileComponent.java @@ -353,10 +353,7 @@ public class WaveFileComponent { **********************************/ private ComtradeCfgDTO getComtradeCfg(InputStream cfgStream) { ComtradeCfgDTO comtradeCfgDTO = new ComtradeCfgDTO(); - try ( - InputStreamReader read = new InputStreamReader(cfgStream, CharsetUtil.CHARSET_GBK); - BufferedReader bufferedReader = new BufferedReader(read); - ) { + try (InputStreamReader read = new InputStreamReader(cfgStream, CharsetUtil.CHARSET_GBK); BufferedReader bufferedReader = new BufferedReader(read);) { // 第一行不关心仅仅是一些描述类的信息 String strFileLine = bufferedReader.readLine(); @@ -435,6 +432,7 @@ public class WaveFileComponent { rateDTO.setNOneSample(result); // 总点数 //这里的strTemp是一个偏移量 rateDTO.setNSampleNum((Integer.parseInt(strTempArray[1]) - nOffset)); + nOffset = rateDTO.getNSampleNum(); lstRate.add(rateDTO); } comtradeCfgDTO.setLstRate(lstRate); @@ -576,6 +574,7 @@ public class WaveFileComponent { break; } } + tmpRateDTO = comtradeCfgDTO.getLstRate().get(nIndex); //YXB 2025-08-27 如果是有效值,那么需要去补点,而不是抽点 if (newLstRate.get(nIndex).bRMSFlag == true) { //计算本段补点采样间隔 @@ -612,6 +611,7 @@ public class WaveFileComponent { break; } float fCoef = comtradeCfgDTO.getLstAnalogDTO().get(j).getFCoefficent(); + fValue = BitConverter.byte2ToUnsignedShort(datArray, i * nBlockSize + 2 * 4 + j * 2) * fCoef; //WW 2019-11-14 /************************* @@ -1366,10 +1366,10 @@ public class WaveFileComponent { s = sdf.format(d); System.out.println(s); WaveFileComponent waveFileComponent = new WaveFileComponent(); - InputStream cfgStream = waveFileComponent.getFileInputStreamByFilePath("D:\\comtrade\\00-B7-8D-00-FA-44\\PQMonitor_PQM1_005_20250709_173908_812.CFG"); - InputStream datStream = waveFileComponent.getFileInputStreamByFilePath("D:\\comtrade\\00-B7-8D-00-FA-44\\PQMonitor_PQM1_005_20250709_173908_812.DAT"); + InputStream cfgStream = waveFileComponent.getFileInputStreamByFilePath("F:\\PQ_PQLD3_9_20250821_081038_640.cfg"); + InputStream datStream = waveFileComponent.getFileInputStreamByFilePath("F:\\PQ_PQLD3_9_20250821_081038_640.dat"); // 获取瞬时波形 //获取原始波形值 - WaveDataDTO waveDataDTO = waveFileComponent.getComtrade(cfgStream, datStream, 0); + WaveDataDTO waveDataDTO = waveFileComponent.getComtrade(cfgStream, datStream, 1); d = new Date(); s = sdf.format(d); System.out.println(s); @@ -1380,6 +1380,7 @@ public class WaveFileComponent { System.out.println(s); // 获取特征值 List lstEigenvalueDTO = waveFileComponent.getEigenvalue(waveDataDTO, true); + System.out.println(1); } }