我没有用过vb,但是可以给你说一下用C语言读取文件的细节,希望对你有所帮助。
首先,你提到的txt,dat文件,这些是一般的文本文件,你可以用写字板之类的程序打开,但是ld2文件不能这样打开开,首先就是它有128个字节的数据头,所以你得查查用vb怎么读取二进制文件。你先读取那128个字节,其中有很多信息,你可以看看给你的程序的public.h文件,有两个变量要注意,就是这个ld2文件的行数和列数,如果这两个数据读出来是400*300,表示这个ld2文件所表示的图像信息有400行,300列,这就有120000个数据点,其中每个数据占两个字节,所以你想读第一个通道的数据,就要从第129个字节开始,一直读到128+240000个字节的地方,读取出来的数据全部除10,即是真实数据。读取第二个通道的数据从129+240000字节开始一直到128+240000+240000字节处,整个ld2文件中有多少通道,可以在128字节的数据头中读出来。
C的写法:
1.
int fp=open(file_path,mode...)
2.
read(fp,buffer,buffer_size)//这里先读取128字节,所以buffer长度也是128字节
3.
从数据头中取得相应的信息,比如卫星号,时间,数据大小,通道数等等
4.
read(fp,data_buffer,data_buffer_size)//这里正式开始读取数据信息,data_buffer大小要根据前面所说来的换算
5.
读取完毕以后你就可以保存成你想要的格式,比如dat、txt等等。
6.
close(fp)//关闭文件
可以查看某个命令的具体用法
语法:cd [目的目录]
补充说明:cd指令可让用户在不同的目录间切换,但该用户必须拥有足够的权限进入目的目录
cd - / cd .. :返回进入此目录之前所在的目录
语法:pwd [--help][--version]
补充说明:执行pwd指令可以得出目前所在目录的绝对路径
语法:ls [选项] [文件或目录]
常用的选项
• -a显示所有文件和目录
• -A显示所有文件和目录,但不显示现前目录“.”和上层目录“..”
• -l 使用详细格式列表 (看的为当前目录里的文件/文件夹的详细信息)
• -d显示目录名称而非其内容 (要和-l连用,看当前目录的详细信息)
-ld 显示指定文件/文件夹的列表
• -i 显示文件和目录的inode编号,系统对每一个文件的编号,用这个编号寻找文件
• -Z 显示文件或目录的上下文(context)
-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 test1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)