gpt4 book ai didi

java - 如何在JAVA中用HDFql获取数据集中的字符串类型数据?

转载 作者:行者123 更新时间:2023-12-01 16:23:54 25 4
gpt4 key购买 nike

我是 HDF5 和 HDFql 的新手,我正在使用 java,我有一个包含多个组的 .h5 文件,在每个组内我有不同的数据集,有些是 float 数组,我得到的数据集如下。 https://gyazo.com/c10100b327d20a2db8c13f2fd9ab7668

 Double[][] values = new Double[numRow][numCol];
HDFql.variableRegister(values);
HDFql.execute("SELECT FROM "+gName+"/"+dName+" INTO MEMORY "+HDFql.variableGetNumber(values));
HDFql.variableUnregister(values);

当我的数据集的变量为 1 行和 1 列且数据类型为字符串时,就会出现问题。 https://gyazo.com/2622693aee83d9eba5487a053ba9247c

我尝试实现以下代码,但收到以下错误消息

  String[] val = new String[10];
HDFql.variableRegister(val);
HDFql.execute("SELECT FROM "+gName+"/"+dName+" INTO MEMORY "+HDFql.variableGetNumber(val));
HDFql.variableUnregister(val);

String val = "";
HDFql.variableRegister(val);
HDFql.execute("SELECT FROM "+gName+"/"+dName+" INTO MEMORY "+HDFql.variableGetNumber(val));
HDFql.variableUnregister(val);

控制台显示的错误是:

A fatal error has been detected by the Java Runtime Environment:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006da2f270, pid=42048, tid=0x00000000000089d4

JRE version: Java(TM) SE Runtime Environment (8.0_211-b12) (build 1.8.0_211-b12) Java VM: Java HotSpot(TM) 64-Bit Server VM (25.211-b12 mixed mode windows-amd64 compressed oops) Problematic frame: V [jvm.dll+0x27f270]

Failed to write core dump. Minidumps are not enabled by default on client versions of Windows

An error report file with more information is saved as: C:\Users\us\AppData\Local\Temp\hs_err_pid42048.log

If you would like to submit a bug report, please visit:
http://bugreport.java.com/bugreport/crash.jsp

欢迎任何帮助,提前非常感谢

最佳答案

即使数据集只有一个元素(在您的情况下,1 行 x 1 列),您仍然需要将变量(您注册以存储数据)声明为数组。换句话说,声明并创建变量 val 如下:

String val[] = new String[1];

此外,请查看 HDFql reference manual 中的第 5.2.51 节了解您可以在 Java 中注册什么类型的变量(使用 variableRegister 方法)。

关于java - 如何在JAVA中用HDFql获取数据集中的字符串类型数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62197656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com