Can';无法从dbf文件读取字符串(但可以正确读取数字类型数据)Java、DBFReader
我目前正在使用DBFReader(github.com/jamel/dbf)读取dbf文件,但当它输出我认为是数据的散列表示时?但是,对于数据为数字的列,这是可以的 下面是代码片段(非常基本的代码): 字符串类型数据的输出Can';无法从dbf文件读取字符串(但可以正确读取数字类型数据)Java、DBFReader,java,inputstream,dbf,Java,Inputstream,Dbf,我目前正在使用DBFReader(github.com/jamel/dbf)读取dbf文件,但当它输出我认为是数据的散列表示时?但是,对于数据为数字的列,这是可以的 下面是代码片段(非常基本的代码): 字符串类型数据的输出 [B@54b749a5 [B@4d441b16 [B@324e68fb [B@39ce508a [B@1809b1ac [B@246f9f88 [B@1c52ac68 [B@77b4ee5e [B@78d9ab8 [B@61a8a9e7 预计会出现这种情况时: 1101 1
[B@54b749a5
[B@4d441b16
[B@324e68fb
[B@39ce508a
[B@1809b1ac
[B@246f9f88
[B@1c52ac68
[B@77b4ee5e
[B@78d9ab8
[B@61a8a9e7
预计会出现这种情况时:
1101
1101
1101
1101
1101
1101
1101
1101
1101
1101
首先,只需要一些假设:
System.out.println(row[1]);
尝试将行[1]
强制转换为所需类型。比如说
SOP(((String) row[1]).toString()); //if String is expected or
SOP(((String) row[1])); //should also work
[B@54b749a5
被打印是因为行[1]
返回一个对象
类型,然后当您将它传递给println
时,它使用对象
类提供的toString()
定义。对象哈希中的[B@表示它是一个字节数组,因此您需要执行以下操作:
新字符串((字节[])行[1])
我尝试了强制转换,但没有成功。无论如何,谢谢。:)
SOP(((String) row[1]).toString()); //if String is expected or
SOP(((String) row[1])); //should also work