使用IDL读取RADARSAT-2的数据,需要用到lutSigma.xml文件中的定标常数来计算相关参量。本文需要提取lutSigma.xml中的offset和gains参数。使用IDL来读取xml文件,并且提取特定的节点下的参数。经过实验找到了下面的方法:

lutSigma.xml文件示例

0.000000e+00

5.374149e+03 5.374090e+03

读取方法

先定义一个函数

;+

; :Author: YQC

;- 读取xml的函数

FUNCTION filter_XML, oNode

name = oNode->getNodeName()

IF name EQ 'offset' OR name EQ 'gains' THEN $

RETURN, 1 ; accept

RETURN, 3 ;; skip

END

解释:这个函数用来标记想要的节点,比如本文要用到offset和gains这两个参数,所以当节点名等于offset或gains时候返回1

调用方法

;====读取xml====

oDoc = OBJ_NEW( 'IDLffXMLDOMDocument', FILENAME=datapath+patharr[fp]+'\lutSigma.xml' )

oNodeIterator = oDoc->createNodeIterator( OBJ_NEW(), FILTER_NAME='filter_XML' )

offt = 0 ;偏移量

vall = [] ;定标常数

cont = 0 ;计数器

oNode = oNodeIterator->nextNode()

WHILE OBJ_VALID( oNode ) DO BEGIN

;读取偏移量

if cont eq 0 then begin

offt = float((oNode->GetFirstChild())->getNodeValue())

endif

;读取定标常数

if cont eq 1 then begin

vall = (oNode->GetFirstChild())->getNodeValue()

endif

cont++

oNode = oNodeIterator->nextNode()

ENDWHILE

;print,vall

OBJ_DESTROY, oDoc

xml文件c语言读取函数,IDL读取XML文件相关推荐

  1. c语言open函数打开文件方式,Linux中C语言open函数打开或创建文件详细讲解

    Linux中C语言open函数打开或创建文件详细讲解 Linux中C语言open函数打开或创建文件详细讲解 头文件: #include #include #include 函数原型: int open ...

  2. R语言dir函数获取目录中文件或者文件夹名称实战

    R语言dir函数获取目录中文件或者文件夹名称实战 目录 R语言dir函数获取目录中文件或者文件夹名称实战 #基本语法

  3. c语言fgetpos的参数,C语言fgetpos()函数:获得当前文件的读写指针(转)

    头文件:#include fgetpos()函数获得当前文件的指针所指的位置,并把该指针所指的位置信息存放到pos所指的对象中.pos以内部格式存储,仅由fgetpos()和fsetpos()使用.f ...

  4. c语言read有什么作用,C语言read()函数:用于读取打开文件的内容

    函数名:read 头文件: 函数原型: int read(int handle,void *buf,int len); 功能:用于读取打开文件的内容 参数:int handle 为要读取的文件 voi ...

  5. 自动拷贝u盘文件 c语言,U盘自动读取软件

    这是U盘自动读取软件,用来设置 U 盘自动运行项,插上 U 盘即可运行盘内文件.俗话说,任何事都有两面性,比如 Autorun.inf 自动运行文件. 软件功能 悄悄拷贝U盘文件到电脑文件夹! 1.自 ...

  6. linux打开文件int open,Linux下C语言open函数打开或创建文件与read,write函数详细讲解...

    open(打开文件) 相关函数 read,write,fcntl,close,link,stat,umask,unlink,fopen 表头文件 #include #include #include ...

  7. C语言fgetpos()函数:获得当前文件的读写指针(转)

    头文件:#include<stdio.h> fgetpos()函数获得当前文件的指针所指的位置,并把该指针所指的位置信息存放到pos所指的对象中.pos以内部格式存储,仅由fgetpos( ...

  8. php文件读写用什么函数,php中常用文件操作读写函数介绍_PHP教程

    本文章介绍了下面几个常用的文件操作函数 file_get_contents 读取整个文件内容 fopen 创建和打开文件 fclose 关闭文件 fgets 读取文件一行内容 file_exists ...

  9. 如何用C语言编写wav读取函数,C++读取WAV音频文件的头部数据的实现方法

    C++读取WAV音频文件的头部数据的实现方法 前言: 在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正.写出这篇目的,就是希望大家一起成长,我也相信技术之间没有高低,只有 ...

最新文章

  1. 【原创】如何使用Jmockit进行单元测试
  2. cocos2d-x游戏实例(12)-实时拖动主角移动
  3. java 中文 编译_java编译带中文是显示乱码的错误
  4. Spring 实践 -AOP
  5. Codeforces 528A Glass Carving STL模拟
  6. echart纵坐标标签特别长换行显示
  7. 面试宝典系列-什么是心跳包机制
  8. Netty工作笔记0076---handler链调用机制实例3
  9. 孪生素数问题--nyoj26
  10. win7下matable7运行停止工作
  11. 系统分析师和系统架构设计师的主要区别是什么?
  12. .NET反编译工具:de4dot
  13. 结构方程模型(SEM)理论篇 (SEM 1)
  14. 大型网站架构之安全性:高安全架构
  15. 高通CPU处理器解析
  16. 警惕消费陷阱和霸王条款:在携程网订的机票2070元退票费1560元
  17. 俄罗斯将基于开源的Sailfish自主研发手机操作系统
  18. 微信中点击链接或者扫描二维码直接跳转外部浏览器打开指定网页下载
  19. 雨课堂知识点总结(十)
  20. 使用Protege构建知识图谱

热门文章

  1. html5+css3个人相册网页制作
  2. Vue音乐--排行榜页面02_抓取首页数据
  3. 自动控制原理——线性系统的根轨迹分析法
  4. Android基础教程(二)之五大布局对象---FrameLayout,LinearLayout ,AbsoluteLayout,RelativeLayout,TableLayout.
  5. 文件的“打开”和“关闭”
  6. You may need an additional loader to handle the result of these loaders.
  7. 给中年程序员的温暖人心的巴比奇的故事
  8. 如何写好项目管理应聘简历?
  9. 控制台推箱子小游戏的实现
  10. 淘宝反腐!26家网店因贿赂淘宝小二被关停