• 大小: 804.51 KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2024-10-09
  • 语言: 其他
  • 标签:

资源简介

自己原创的一个读取seg2的程序。结果生成了一个txt的文件,保存了每个道中的所有采样点的数据。运行窗口显示道头字符串。程序可以运行出来,虽然还不完善,但是对大家会有很大的帮助。。好好看。读者可以自己再继续改。

资源截图

代码片段和文件信息

// seg2读取程序.cpp : Defines the entry point for the console application.
//
// 读取seg2.cpp : Defines the entry point for the console application.
//

#include “stdafx.h“
#include
#include
#include
#include
#include 
//#include
//#include 

 
using namespace std;

vector > tb_all ;//存储多道数据的容器
vectortb;          //存储单道数据的容器
vector > tb_st_all;//存储道头中字符串
vector c;           //单个字符串中的字符
vectortp;            //存储道头(trace pointer)指针的容器
vector::iterator tp_iter;    //容器的指针
//map sb ;  //存储道头中的字符串
//map::const_iterator it_note ;//map的指针
 int data[]={0};
int jksum;
long int d;
char chdata_format ;
int block_id=0x3a55;
unsigned short int n_traces ;        //道数
unsigned short int sizeof_tdb;     //道头的尺寸
unsigned long int sizeof_db;
unsigned short int n_sample;         //采样点数
unsigned short int shot_number;      //炮号
double dt ;                      // 采样间距 (seconds).
int rec_location;                    //检波点位置
int soc_location;                    //炮点位置 


int main()
{
//在文件头读取道数和道指针
    ifstream infile(“e030c.dat“ios::binary|ios::in);
ofstream ofile(“e030c.txt“ios::out);

infile.seekg(0ios_base::beg);

  infile.read( (char*) &block_id sizeof(block_id) );//读取道头标志
  if(block_id!=0x553A)
      {
  cout<< “In the file descriptor block the block id is incorrect.“
       <<“it isn‘t seg2 fomate“<   }

   //  else
// {

   infile.seekg(6ios_base::beg);
   infile.read( (char*) &n_traces sizeof(n_traces) ) ;//读取道数
        
   //读取道头指针
      infile.seekg(32ios_base::beg);
  for(unsigned short int i=0;i != n_traces;i++)
  {
infile.read( (char*) &j sizeof(j) );
            tp.push_back(j);
}

 cout<<“the number of traces is:“<
   //  infile.close();

   //----------------------------------------------------------------------------------
 //下面进入道头块读取数据
    //  infile.open(“e030c.dat“ios::in);

  
     for(i=0;i  {

    infile.seekg(tp[i]ios_base::beg);//道头开始位置
        infile.seekg(2+tp[i]ios_base::beg);//道头尺寸块起始位置
        infile.read((char*) &sizeof_tdbsizeof(sizeof_tdb));//读取道头i+1的尺寸
    infile.read( (char*) &sizeof_db sizeof(sizeof_db) ) ;//读取数据段的长度
        infile.seekg(8+tp[i]ios_base::beg);
        infile.read( (char*) &n_sample sizeof(n_sample) ) ;//读取采样点数(/道)
       // infile.read((char*)&data_format sizeof(data_format) ) ;//读取数据格式(0x01、0x02)

       
  /*  infile.seekg(32+tp[i]ios_base::beg);
        streampos here = infile.tellg();
cout<<“trace  “< while(static_cast(here)<(sizeof_tdb+tp[i]))
{
          streampos here = infile.tellg();
  infile.read((char *) &chsizeof(ch));
  cout< }
cout<     */


//读取道头中字符串
  infile.seekg(32+tp[i]ios_base::beg);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        667  2010-04-30 09:27  seg2读取程序\StdAfx.h

     文件        299  2010-04-30 09:27  seg2读取程序\StdAfx.cpp

     文件       1244  2010-04-30 09:27  seg2读取程序\ReadMe.txt

     文件       4610  2010-04-30 09:27  seg2读取程序\seg2读取程序.dsp

     文件        532  2010-04-30 09:27  seg2读取程序\seg2读取程序.dsw

     文件      33792  2010-04-30 09:49  seg2读取程序\seg2读取程序.ncb

     文件      82944  2010-04-30 09:48  seg2读取程序\Debug\vc60.idb

     文件     187048  2010-04-30 09:28  seg2读取程序\Debug\seg2读取程序.pch

     文件     151552  2010-04-30 09:48  seg2读取程序\Debug\vc60.pdb

     文件       1862  2010-04-30 09:28  seg2读取程序\Debug\StdAfx.obj

     文件     589912  2010-04-30 09:48  seg2读取程序\Debug\seg2读取程序.exe

     文件    1180672  2010-04-30 09:48  seg2读取程序\Debug\seg2读取程序.pdb

     文件     389168  2010-04-30 09:48  seg2读取程序\Debug\seg2读取程序.obj

     文件     847784  2010-04-30 09:48  seg2读取程序\Debug\seg2读取程序.ilk

     文件          0  2010-04-30 09:48  seg2读取程序\e030c.txt

     文件     407904  2003-03-05 10:41  seg2读取程序\e030c.dat

     文件       1389  2010-04-30 09:48  seg2读取程序\seg2读取程序.plg

     文件       5110  2010-04-30 09:48  seg2读取程序\seg2读取程序.cpp

     文件      48640  2010-04-30 09:49  seg2读取程序\seg2读取程序.opt

     目录          0  2010-04-30 09:27  seg2读取程序\Debug

     目录          0  2010-04-30 09:26  seg2读取程序

----------- ---------  ---------- -----  ----

              3935129                    21


评论

共有 条评论

相关资源