0
以下HBase的代碼返回我rowKey前面一些奇怪的字符:HBase的KeyValue.getKey()返回多餘的字符
「\ u0000的」 「\ u0014」,「EI:蝦:-749 ...。 「
以前的怪異字符是'\ u0000'和'\ u0014',有時是'\ u0016'。我在上面的行中加上引號使其可讀。只有兩個,它們被預置在我的rowkey上。關鍵應該是'ei:蝦:-749 ...'。下面是我用它來拿到鑰匙回代碼:
import static org.apache.hadoop.hbase.util.Bytes.toBytes;
List<KeyValue> kvs = result.list();
String key = null;
for (KeyValue kv : kvs) {
String value = Bytes.toString(kv.getValue());
String qualifier = Bytes.toString(kv.getQualifier());
if(key == null) {
key = Bytes.toString(kv.getKey());
下面是我用來創建我把代碼:
public Put createPut(String columnFamily) {
StringBuilder sb = new StringBuilder(this.getGroup()).append(':');
sb.append(this.getKey()).append(':').append(this.getCoordinateHash());
Put p = new Put(toBytes(sb.toString()));
p = p.add(toBytes(columnFamily), toBytes(COLUMN_VALUE), toBytes(this.getValue()));
任何想法,這些怪異的人物是誰?我究竟做錯了什麼? 謝謝, Rajat