如何插入特殊字符斜杠\&引用;在hbase值中?
无法将\存储在hbase中如何插入特殊字符斜杠\&引用;在hbase值中?,hbase,Hbase,无法将\存储在hbase中 put 'table1','rowKey1','column1','This is \ value.' 存储为 This is \x5C value. 从终端和Java API插入时也是如此 为什么会发生这种情况以及如何解决这种情况?为什么会发生这种情况? Hbase shell使用org.apache.hadoop.Hbase.util.Bytes::toStringBinary作为默认转换器,我引用了Hbase shell/src/main/ruby/Hbas
put 'table1','rowKey1','column1','This is \ value.'
存储为
This is \x5C value.
从终端和Java API插入时也是如此
为什么会发生这种情况以及如何解决这种情况?为什么会发生这种情况? Hbase shell
使用org.apache.hadoop.Hbase.util.Bytes::toStringBinary作为默认转换器
,我引用了Hbase shell/src/main/ruby/Hbase/table.rb中的funcconvert(column,kv)
toStringBinary
中的代码可以解释为什么会发生这种情况
for (int i = off; i < off + len ; ++i ) {
int ch = b[i] & 0xFF;
if ((ch >= '0' && ch <= '9')
|| (ch >= 'A' && ch <= 'Z')
|| (ch >= 'a' && ch <= 'z')
|| " `~!@#$%^&*()-_=+[]{}|;:'\",.<>/?".indexOf(ch) >= 0 ) {
result.append((char)ch);
} else {
result.append(String.format("\\x%02X", ch));
}
}
for(int i=off;i 如果((ch>='0'&&ch='A'&&ch='A'&&ch为什么会发生这种情况?
Hbase shell使用org.apache.hadoop.Hbase.util.Bytes::toStringBinary作为默认转换器
,我引用了Hbase shell/src/main/ruby/Hbase/table.rb中的funcconvert(column,kv)
toStringBinary
中的代码可以解释为什么会发生这种情况
for (int i = off; i < off + len ; ++i ) {
int ch = b[i] & 0xFF;
if ((ch >= '0' && ch <= '9')
|| (ch >= 'A' && ch <= 'Z')
|| (ch >= 'a' && ch <= 'z')
|| " `~!@#$%^&*()-_=+[]{}|;:'\",.<>/?".indexOf(ch) >= 0 ) {
result.append((char)ch);
} else {
result.append(String.format("\\x%02X", ch));
}
}
for(int i=off;i 如果((ch>='0'&&ch='A'&&ch='A'&&ch有什么方法可以强制hbase不将“\”转换为ASCII码吗?@AbhashKumar这只是hbase shell
选择的方式,在后端存储中,您可以使用java驱动程序从hbase读取内容,然后您可以自己处理它。有什么方法可以强制hbase不转换将“\”转换为ASCII码?@AbhashKumar这只是Hbase shell
选择显示的方式,在后端存储中,您可以使用java驱动程序从Hbase读取内容,然后您可以自己处理它。