本人有个DAT文件格式的数据库(CLGIS测井),里面的数据格式如下:l一4字节……………孔号(4个字节 、字符型) 
lO0__lO2字节……曲线个数(2个字节、整型) 
2l0__6lO字节 …曲线名称(4个字节 、字符型) 
6l0__8lO字节………曲线是否有值(2个字节) 
l4l0__l6lO字节……曲线起始深度(2个字节) 
l6l0__l8lO字节……曲线终止深度(2个字节) 
18lO一22lO字节…曲线点距(4个字节、实数) 
2218一结束 ……曲线各点数据(4字节 、实数) 
其 中第 221 1字节是符号 “ ”’,可看作是信息与 
数据部分的分隔符,也可认为是区分 CLGIS的,-c.DAT 
与其它 DAT 文件的一个标志.文件中没有深度曲线, 
数据的深度值是由该数据所处 的字节位置及其所对 
应曲线 的起始深度决定的;文件中孔号项 、曲线名称 
项 、曲线个数项是以 ASCII 码储存的,其余字段以压 
缩格式储存.现在我就是想把这个文件里面的数据转换到txt文本中,请高手给予帮助,最好附上代码

解决方案 »

  1.   

    第一种方法:直接按照二进制方式打开文件,读到BYTE数组里面,然后自己按照预设的长度取出需要的内容
    第二种方法:按照预定的各段位长度定义一个数据类型,然后将内容读到这个自定义类型中
      

  2.   

    以二进制方式打开文件,获得数据,转换,以文本方式输出。Open "TESTFILE" For Binary Access Read Lock Read As #1
    Open "TESTFILE" For Output As #2
      

  3.   

    lO0__lO2字节……曲线个数(2个字节、整型)    这是容易理解
    2l0__6lO字节 …曲线名称(4个字节 、字符型)  这 4 个字节在哪里?为什么占用 400 字节空间?
      

  4.   

    Public Type DAT
    kh    (   1 to       4) as byte   '1~4字节……………孔号(4个字节 、字符型)
    bl1   (   5 to      99) as byte   '保留1
    qxgs                    as integer'100~102字节……曲线个数(2个字节、整型)
    bl2   ( 103 to     209) as byte   '保留2
    qxmc  (   0 to 100*4-1) as byte   '210~610字节 …曲线名称(4个字节 、字符型)
    qxsfyz(   0 to 100*2-1) as byte   '610~810字节………曲线是否有值(2个字节)
    bl3   ( 810 to    1409) as byte   '保留3
    qxqssd(   0 to 100*2-1) as byte   '1410~1610字节……曲线起始深度(2个字节)
    qxzzsd(   0 to 100*2-1) as byte   '1610~1810字节……曲线终止深度(2个字节)
    qxdj  (   0 to      99) as single '1810~2210字节…曲线点距(4个字节、实数)
    fgf                     as byte   '其中第2211字节是符号 “ ”’,可看作是信息与数据部分的分隔符,也可认为是区分 CLGIS的,-c.DAT与其它 DAT 文件的一个标志.
    bl4   (2212 to    2217) as byte   '保留4
    qxgdsj(0    to    9999) as single '2218~结束 ……曲线各点数据(4字节 、实数)
                                      '文件中没有深度曲线,数据的深度值是由该数据所处 的字节位置及其所对
                                      '应曲线 的起始深度决定的;文件中孔号项 、曲线名称
                                      '项 、曲线个数项是以 ASCII 码储存的,其余字段以压
                                      '缩格式储存.
    End Type
      

  5.   

    楼主
    1和l不分
    0和O不分
    的精神感动了我。关于自己是否适合编程的很简单的测试:
    在报纸或杂志上随便找一段约1000字的文章,在Word中输入一遍。输完后再参考下面答案:
    A里面有10处以上文字或标点错误
    B里面没有文字或标点错误并敢为此跟人打赌
    C里面没有文字或标点错误并且字体和排版完全与原稿一致
    D打印在半透明的纸上和原稿重叠在一起检查一模一样,且自我感觉很有成就感A不适合编程
    B初级程序员
    C高级程序员
    D软件项目经理如果想从A变成B的话,到我的资源http://download.csdn.net/zhao4zhong1里面下载“适合程序员的键盘练习”
      

  6.   

    你的数据结构有问题
    1 5-100字节 数据不清楚
    2 2l0__6lO字节 …曲线名称(4个字节 、字符型) 应该为8 字节 
    3 数据段问题 
      曲线1  曲线2 ...
    1  ..    ..   ...
    2  ..    ..   ...
      

  7.   

    有现成的程序和小工具,可以将CLGIS系统生成的DAT格式数据,转换成LAS格式、EXCEL格式和TXT格式,还包括WIS格式等。联系:[email protected]