UTF-16BE编码的xml文件提取数据并做平滑曲线图

最近老板给了个xml文件想把里面的数据提取出来做个平滑曲线图,因为xml文件是utf-16be编码的,在notpad++编辑器打开是一堆乱码,哎,没办法先用perl进行转码然后提取数据再调用R作图,
xml文件如下:

<?xml version="1.0" encoding="UTF-16BE"?>

<!DOCTYPE oif_file SYSTEM "http://www.dcs.warwick.ac.uk/~gmb/oifml.dtd">

<oif_file>

<odmg_object oid="T2904">

  <class>jyd.collection.KVPair

  </class>

  <contents>

    <attribute name="key">

      <value><string val="Id"/>

      </value>

    </attribute>

    <attribute name="value">

      <value><string val="2020.07.17_16.21.03_460529-1"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2912">

  <class>jyd.collection.StorableList

  </class>

  <contents>

      <value><string val="History"/>

      </value>

      <value><string val="2020"/>

      </value>

      <value><string val="2020.07"/>

      </value>

      <value><string val="2020.07.17_16.21.03_460529-1"/>

      </value>

  </contents>

</odmg_object>

<odmg_object oid="T2905">

  <class>jyd.collection.KVPair

  </class>

  <contents>

    <attribute name="key">

      <value><string val="path"/>

      </value>

    </attribute>

    <attribute name="value">

      <value><jyd.collection.StorableList val="T2912"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2973">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="0.9066799879074097"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="12.680500030517578"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2976">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="0.9900199770927429"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="13.222900390625"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2977">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="1.0066800117492676"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="13.636899948120117"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2983">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="1.190019965171814"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="16.09630012512207"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2985">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="1.2066899538040161"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="16.07390022277832"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2987">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="1.7900300025939941"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="15.82040023803711"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2989">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="1.806689977645874"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="15.722599983215332"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2992">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="1.9566999673843384"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="15.974300384521484"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2993">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="2.4066898822784424"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="14.015399932861328"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2995">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="2.573349952697754"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="13.376500129699707"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T2997">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="2.5941898822784424"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="13.413700103759766"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T3000">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="3.031680107116699"/>

      </value>

    </attribute>

    <attribute name="y">

      <value><double val="12.785200119018555"/>

      </value>

    </attribute>

  </contents>

</odmg_object>

<odmg_object oid="T3001">

  <class>com.smallplanet.jyd.JYDPoint

  </class>

  <contents>

    <attribute name="x">

      <value><double val="3.156680107116699"/>

      </value>

    </attribute>

    &l
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值