关于存于TXT中的大量数据读取的有关问题——
关于存于TXT中的大量数据读取的问题——在线等
内容大致如下 括号注释是我加上的 原TXT没有 方便大家理解
STDEP(起始深度) = 1000.0000
ENDEP(结束深度) = 1110.0000
RLEV = 0.1250
CURVENAME = GR, SP, AC, RLLD, RLLS, RXO, RMG, RMN, CAL, DEN, CNL, SPBL(这是对应深度下的测井数据)
END
#DEPTH GR SP AC RLLD RLLS RXO RMG RMN CAL DEN CNL SPBL
1000.0000 113.648 -14.232 120.289 3.457 2.981 3.283 -9999.000 -9999.000 9.383 2.233 0.396 -9999.000
1000.1250 111.466 -14.014 117.810 3.722 3.148 3.274 -9999.000 -9999.000 9.383 2.221 0.397 -9999.000
……………………………………………………………………(N行)
目的是要对这些数据进行处理 并绘出图来 如何实现以深度为标尺多个数据曲线绘在一个框内?
身边没有懂的人 诚心来学习 顺便想拜师 还有很多问题想请教 如果需要的话可以给费用,可能谈钱就俗了,但是也是挺尴尬的事儿,没有办法。QQ:231391559 真的是想通过这个学学 要不就情人做 好心人给些建议
------解决方案--------------------
保存成TXT其实很不方便做处理,得自己读的时候想很多办法拿回想要的数据,可以考虑保存为dat文件,以固定的格式保存进去,然后就以那个格式读出来,这样就方便区分坐标数据等了。
------解决方案--------------------
转换成txt可以方便调试,个人认为最终的程序直接读取原始文件,使用时才方便.
自定义结构体包含
DEPTH GR SP AC RLLD RLLS RXO RMG RMN CAL DEN CNL SPBL
定义一个数据管理器类,包含若干个自定义结构体,这个类也提供读取原始文件的函数
你也说了是井深1000到1100,也就是深度为100
然后绘制的曲线的时候,就以DEPTH为Y轴,Y轴的总跨度即为100,X为GR SP AC RLLD RLLS RXO RMG RMN CAL DEN CNL SPBL中的任意一个值即可.跨度由采集到的数据决定
要显示多少个测试信息,就定义多少个曲线控件,或者一个控件里面显示N条曲线,单位得区分,曲线颜色要定义好
做这个控件,得对GDI比较熟悉,祝好运!
------解决方案--------------------
大文件用内存映像, 然后自己解析回车换行来读
------解决方案--------------------
CStdioFile::ReadString()一行一行的读,可以利用CString::Tokenize()去拆分字符串,解析得到自己需要的数据。
内容大致如下 括号注释是我加上的 原TXT没有 方便大家理解
STDEP(起始深度) = 1000.0000
ENDEP(结束深度) = 1110.0000
RLEV = 0.1250
CURVENAME = GR, SP, AC, RLLD, RLLS, RXO, RMG, RMN, CAL, DEN, CNL, SPBL(这是对应深度下的测井数据)
END
#DEPTH GR SP AC RLLD RLLS RXO RMG RMN CAL DEN CNL SPBL
1000.0000 113.648 -14.232 120.289 3.457 2.981 3.283 -9999.000 -9999.000 9.383 2.233 0.396 -9999.000
1000.1250 111.466 -14.014 117.810 3.722 3.148 3.274 -9999.000 -9999.000 9.383 2.221 0.397 -9999.000
……………………………………………………………………(N行)
目的是要对这些数据进行处理 并绘出图来 如何实现以深度为标尺多个数据曲线绘在一个框内?
身边没有懂的人 诚心来学习 顺便想拜师 还有很多问题想请教 如果需要的话可以给费用,可能谈钱就俗了,但是也是挺尴尬的事儿,没有办法。QQ:231391559 真的是想通过这个学学 要不就情人做 好心人给些建议
------解决方案--------------------
保存成TXT其实很不方便做处理,得自己读的时候想很多办法拿回想要的数据,可以考虑保存为dat文件,以固定的格式保存进去,然后就以那个格式读出来,这样就方便区分坐标数据等了。
------解决方案--------------------
转换成txt可以方便调试,个人认为最终的程序直接读取原始文件,使用时才方便.
自定义结构体包含
DEPTH GR SP AC RLLD RLLS RXO RMG RMN CAL DEN CNL SPBL
定义一个数据管理器类,包含若干个自定义结构体,这个类也提供读取原始文件的函数
你也说了是井深1000到1100,也就是深度为100
然后绘制的曲线的时候,就以DEPTH为Y轴,Y轴的总跨度即为100,X为GR SP AC RLLD RLLS RXO RMG RMN CAL DEN CNL SPBL中的任意一个值即可.跨度由采集到的数据决定
要显示多少个测试信息,就定义多少个曲线控件,或者一个控件里面显示N条曲线,单位得区分,曲线颜色要定义好
做这个控件,得对GDI比较熟悉,祝好运!
------解决方案--------------------
大文件用内存映像, 然后自己解析回车换行来读
------解决方案--------------------
CStdioFile::ReadString()一行一行的读,可以利用CString::Tokenize()去拆分字符串,解析得到自己需要的数据。