从字符串中删除无效字符

时间:2018-08-03 15:42:54

标签: java php excel unicode encoding

我正在使用php将数据保存到数据库,并使用java将其导出

当我创建Excel时,某些字符所在的行会导致问题

我使用这个https://github.com/dhatim/fastexcel包裹

没有代码错误,但是当我打开xlsx时看到此消息

this is row with "\b" character

this is row with "\u0001" character

以下是字符:“ \ b”和“ \ u0001”

这是我数据库中带有此字符的行

enter image description here

enter image description here enter image description here

当我从db复制列并将其粘贴到inteliji时,我看到了 enter image description here

enter image description here

有什么方法可以将字符串编码更改为avoild excel错误,或者在将它们保存到数据库时或在导出它们时使用java删除此类错误字符

1 个答案:

答案 0 :(得分:0)

数据似乎包含不可打印的字符“ heading of heading”和“ backspace”,这些字符在常见字符集中有效。查看String.replaceAll()并替换为“”。这将删除这些字符。我让您构造一个简单的正则表达式来搜索它们。