【发布时间】:2019-04-16 12:58:19
【问题描述】:
我正在从文件中读取数据,有时该文件包含一些时髦的东西,例如:
"䉌Āᜊ»ç‰ç•‡ï¼ƒè¸²æœ€ä²’Bíœë¨¿ä„€å•²ï²ä‹¾é¥˜BéŒé“‡ä„€â²ä‹¾â¢"
我需要删除/替换这些字符,因为 JSON 不知道如何处理它们。
它们不是控制字符(我认为),所以我目前的正则表达式
Regex.Replace(value, @"\p{C}+", string.Empty);
没有抓到他们。
许多读入的字符串会很长,超过 256 个字符,所以我宁愿不循环检查每个字符。
有没有简单的解决方案?我认为正则表达式可以解决它,但我不确定。
【问题讨论】:
-
您正在使用错误的编码读取文件。
-
这就是我的想法,但 99% 的读取字符串都是有效的,这些可能每 1000 次读取就会发生一次。这很可能是数据损坏,因为这些是日志文件的残余。
-
如果你看,这就是我找到我正在使用的正则表达式的答案:)
-
当你遇到这样的垃圾数据时,是整个文件,还是只是文件的一部分?另外,我认为您的标题不准确,因为这些是可打印的字符。