各位大侠!首先描述下我需要的功能:
有n个txt文件,里面格式大致如下:
...
...
PASS FT_GSM_TEST PHONE_MODE_GSM_900,5,59 Loss(In/Out):6.551227/6.681415
Pass Average Power 31 33 32.08504
Pass Peak Power 31 39 32.08504
Pass Power Vs. Time --- --- passed
Pass Phase Error Peak -20 20 3.680027
Pass Phase Error RMS --- 4 1.38195
Pass Frequency Error -75 75 2.77953
Pass Spectrum due to Modulation --- --- passed
--- SM@-600KHz --- -60 -77.72936
--- SM@-400KHz --- -60 -70.25675
--- SM@400KHz --- -60 -71.37618
--- SM@600KHz --- -60 -77.54009
Pass Spectrum due to Switching --- --- passed
--- SS@-600KHz --- -21 -37.55593
--- SS@-400KHz --- -19 -33.86618
--- SS@400KHz --- -19 -30.75134
--- SS@600KHz --- -21 -36.9227 PASS FT_GSM_TEST PHONE_MODE_GSM_900,5,121 Loss(In/Out):6.573294/6.66533
Pass Average Power 31 33 32.00257
Pass Peak Power 31 39 32.00257
Pass Power Vs. Time --- --- passed
Pass Phase Error Peak -20 20 4.223923
Pass Phase Error RMS --- 4 1.418725
Pass Frequency Error -75 75 -6.447608
Pass Spectrum due to Modulation --- --- passed
--- SM@-600KHz --- -60 -76.80498
--- SM@-400KHz --- -60 -70.09677
--- SM@400KHz --- -60 -70.19224
--- SM@600KHz --- -60 -76.6252
Pass Spectrum due to Switching --- --- passed
--- SS@-600KHz --- -21 -36.59517
--- SS@-400KHz --- -19 -32.51443
--- SS@400KHz --- -19 -31.2654
--- SS@600KHz --- -21 -37.62667 PASS FT_GSM_TEST PHONE_MODE_GSM_900,5,978 Loss(In/Out):6.555149/6.605227
Pass Average Power 31 33 32.17142
Pass Peak Power 31 39 32.17142
Pass Power Vs. Time --- --- passed
Pass Phase Error Peak -20 20 2.987957
Pass Phase Error RMS --- 4 1.390235
Pass Frequency Error -75 75 -13.78932
Pass Spectrum due to Modulation --- --- passed
--- SM@-600KHz --- -60 -76.88134
--- SM@-400KHz --- -60 -71.08246
--- SM@400KHz --- -60 -70.57403
--- SM@600KHz --- -60 -77.26451
Pass Spectrum due to Switching --- --- passed
--- SS@-600KHz --- -21 -38.1521
--- SS@-400KHz --- -19 -33.97249
--- SS@400KHz --- -19 -29.52433
--- SS@600KHz --- -21 -36.86544 ...
...有个Excel文件,里面有多个sheet页,比如说有GSM、WCDMA、EDGE 三个
里面大致有这样的列:
GSM_900,978
Average Power;Phase Error Peak;Phase Error RMS;Frequency Error; ...;SM@600KHz;Rx Level;BERdelphi程序的作用就是将txt文件中的数据进行抓取后填入到Excel对应的列中,
比如上面的值填入的应该是:
GSM_900,978
Average Power;Phase Error Peak;Phase Error RMS;Frequency Error; ...;SM@600KHz;
32.17142;2.987957;1.390235;-13.78932;...;-77.26451;请问大家有没有什么好的方法?需要速度上能够更快一些。
本来用VB写了一个程序,但是速度太慢了,估计方法和算法上存在些问题,所以请教各位大侠们有没有什么妙招???希望能提供一个比较可行的方案,当然有实例么是最好的了,先谢谢了!!!
有n个txt文件,里面格式大致如下:
...
...
PASS FT_GSM_TEST PHONE_MODE_GSM_900,5,59 Loss(In/Out):6.551227/6.681415
Pass Average Power 31 33 32.08504
Pass Peak Power 31 39 32.08504
Pass Power Vs. Time --- --- passed
Pass Phase Error Peak -20 20 3.680027
Pass Phase Error RMS --- 4 1.38195
Pass Frequency Error -75 75 2.77953
Pass Spectrum due to Modulation --- --- passed
--- SM@-600KHz --- -60 -77.72936
--- SM@-400KHz --- -60 -70.25675
--- SM@400KHz --- -60 -71.37618
--- SM@600KHz --- -60 -77.54009
Pass Spectrum due to Switching --- --- passed
--- SS@-600KHz --- -21 -37.55593
--- SS@-400KHz --- -19 -33.86618
--- SS@400KHz --- -19 -30.75134
--- SS@600KHz --- -21 -36.9227 PASS FT_GSM_TEST PHONE_MODE_GSM_900,5,121 Loss(In/Out):6.573294/6.66533
Pass Average Power 31 33 32.00257
Pass Peak Power 31 39 32.00257
Pass Power Vs. Time --- --- passed
Pass Phase Error Peak -20 20 4.223923
Pass Phase Error RMS --- 4 1.418725
Pass Frequency Error -75 75 -6.447608
Pass Spectrum due to Modulation --- --- passed
--- SM@-600KHz --- -60 -76.80498
--- SM@-400KHz --- -60 -70.09677
--- SM@400KHz --- -60 -70.19224
--- SM@600KHz --- -60 -76.6252
Pass Spectrum due to Switching --- --- passed
--- SS@-600KHz --- -21 -36.59517
--- SS@-400KHz --- -19 -32.51443
--- SS@400KHz --- -19 -31.2654
--- SS@600KHz --- -21 -37.62667 PASS FT_GSM_TEST PHONE_MODE_GSM_900,5,978 Loss(In/Out):6.555149/6.605227
Pass Average Power 31 33 32.17142
Pass Peak Power 31 39 32.17142
Pass Power Vs. Time --- --- passed
Pass Phase Error Peak -20 20 2.987957
Pass Phase Error RMS --- 4 1.390235
Pass Frequency Error -75 75 -13.78932
Pass Spectrum due to Modulation --- --- passed
--- SM@-600KHz --- -60 -76.88134
--- SM@-400KHz --- -60 -71.08246
--- SM@400KHz --- -60 -70.57403
--- SM@600KHz --- -60 -77.26451
Pass Spectrum due to Switching --- --- passed
--- SS@-600KHz --- -21 -38.1521
--- SS@-400KHz --- -19 -33.97249
--- SS@400KHz --- -19 -29.52433
--- SS@600KHz --- -21 -36.86544 ...
...有个Excel文件,里面有多个sheet页,比如说有GSM、WCDMA、EDGE 三个
里面大致有这样的列:
GSM_900,978
Average Power;Phase Error Peak;Phase Error RMS;Frequency Error; ...;SM@600KHz;Rx Level;BERdelphi程序的作用就是将txt文件中的数据进行抓取后填入到Excel对应的列中,
比如上面的值填入的应该是:
GSM_900,978
Average Power;Phase Error Peak;Phase Error RMS;Frequency Error; ...;SM@600KHz;
32.17142;2.987957;1.390235;-13.78932;...;-77.26451;请问大家有没有什么好的方法?需要速度上能够更快一些。
本来用VB写了一个程序,但是速度太慢了,估计方法和算法上存在些问题,所以请教各位大侠们有没有什么妙招???希望能提供一个比较可行的方案,当然有实例么是最好的了,先谢谢了!!!
解决方案 »
- 文件流的操作 很简单的问题 困扰我几天了
- 如何为每一个线程增加一个定时执行的功能?不要新加一个定时器控件,线程本身有没有可以设置定时执行的属性呢?
- [求助]如何将以下C语言中的声明转换成DELPHI中的声明?
- 为何第一次查询数据总是很慢?
- dos下拨号问题参与者有分给出原码或例子的给一百分!
- filter属性能指定两个条件吗,比如年龄>15,身高>180
- 注册表移动问题
- 求CRC算法, 或者64位RSA算法的资料, 语言不论.
- Delphi中更新一个字段为空,怎样将这个空值传到TQuery控件的SQL语句的相应参数中
- DevExQuantumGrid
- 查询效率问题
- 带checkbox的listview,点击checkbox时想根据当前列表内容弹出警告框怎么实现?
具体可以参照dxdbgrid的savetoxls的源程序
这个方面使用了cxgrid,导出excel是快了,但是发觉速度慢是在对txt文本进行读取,获取对应的数据并填写至cxgrid中时速度比较慢,现在一个文本处理下来需要7秒多,一个文本345KB,需要获取的数据项有500多项。有没有快速点的方法么?感觉太慢了,每次计算都是需要1000个文本的,这样处理下来得1000*7=7000秒=2个小时
{
for 循环
}
my_cxgrid.EndUpdate;速度马上得到提升!问题解决!谢谢各位!