如何读取DM存储在hdf5格式文件中的字符串

时间:2017-09-28 03:13:17

标签: hdf5 typeconverter dm-script

我正在使用DM编写脚本,并希望阅读hdf5文件格式。

我借用了Tore Niermann的gms_HDF5_Plug-In(hdf5_GMS2X_amd64.dll)和他的CMD_import_hdf5.s脚本。它使用h5_read_dataset(filename,datapath)来读取图像数据集。

我试图找出读取存储在同一文件中的字符串信息的方法。我特别感兴趣的是读取存储在字符串中的角度,如图所示。Demonstrated string to read。 h5_read_dataset(filename,datapath)函数不适用于读取字符串。

有一个包含功能列表的帮助文件(hdf5_plugin.chm),但遗憾的是我无法打开它们以查看更多信息。 hdf5_plugin.chm showing the function list

我认为读取字符串的正确函数应该类似于h5_read_attr()或h5_info(),但我没有测试它们。 DM总是说这两个功能不存在。

在按字符串读出角度后,我还需要一些帮助来将字符串转换为double数据类型。

谢谢。

3 个答案:

答案 0 :(得分:0)

关于.chm文件的潜在答案:当您在Windows中下载(或发送电子邮件).chm文件时,操作系统将它们归类为“潜在的dagerouse”(因为它可能包含可执行的HTML代码,我认为)。因此,默认情况下无法显示这些文件。但是,您可以右键单击这些文件并在文件属性中“取消阻止”它们。

实施例: enter image description here

答案 1 :(得分:0)

  

我认为这很可能是该插件特有的问题,而不是一般的DM脚本。所以最好直接联系插件 - 作者。

如果您知道文件格式,替代(不好)的解决方案是“重写”您自己的HDF5文件阅读器。为此,您需要DM脚本语言的“Streaming”命令,并浏览(binary?)源文件到适当的文件位置。在F1帮助文档中阅读此内容的起点如下:

enter image description here

答案 2 :(得分:0)

使用Val()命令将String转换为Number。 DM脚本中的变量没有整数/双/浮点概念,所有都只是number。 (这与images不同,您可以在其中定义数字类型。另外:对于file-inport / export,可以使用另一个答案中的taggroup streaming命令进行类型区分。)

示例脚本:

string numStr = "1.234e-2"
number num = val( numStr )
ClearResults()
Result( "\n As string:" + numStr )
Result( "\n As value:" + num )
Result( "\n As value, formatted:" + Format(num,"%3.2f") )