\x0d\x0a字符附加在hbase表数据中

b4qexyjb  于 2021-06-10  发布在  Hbase
关注(0)|答案(1)|浏览(462)

我使用三列的组合在hbase中创建行键。它被成功插入,我也可以在日志中看到我的数据。日志中的数据是正确的,没有任何垃圾字符。但是当我扫描我的表时,我可以看到\x0d\x0a被追加到行键中

123|\x0D\x0A4295856150|404                 column=cf:SegmentSequence, timestamp=1476249090712, value=2
 123|\x0D\x0A4295856150|404                 column=cf:SegmentSequence.segmentId, timestamp=1476249090712, value=15
 123|\x0D\x0A4295856150|405                 column=cf:FFAction, timestamp=1476249090712, value=I

也。这是我如何形成我的行键。

String strKey = strFileName + "|" + strOrgId + "|" + strLineItemId;
Put put = new Put(Bytes.toBytes(strKey));

此外,这个字符将附加在strorgid之前和strfilename之后。

kulphzqa

kulphzqa1#

很明显,在strorgid中,根据数据示例,开头有一个新行字符(\r\n其tobytes()值为\x0d\x0a)。因此,您需要单独修剪包含新行的所有字符串,然后连接或需要将所有新行字符替换为空白。以下是根据数据样本仅strorgid的微调代码。

String strKey = strFileName + "|" + strOrgId.trim() + "|" + strLineItemId;

相关问题