过滤ASCII码中的不可见字符

作者:じ☆ve宝贝

发布时间:2017-11-02T13:40:34

近日在hive上做数据库清洗,发现部分数据有串行,最终发现是因为爬虫抓取的内容中,携带了部分ASCII的控制字符导致的(例如:SOH标题开始……),因此写了如下程序过滤掉0到31、以及127不可见的ASCII值

	public static String filter(String content) {
		if (content != null && content.length() > 0) {
			char[] contentCharArr = content.toCharArray();
			for (int i = 0; i < contentCharArr.length; i++) {
				if (contentCharArr[i] < 0x20 || contentCharArr[i] == 0x7F) {
					contentCharArr[i] = 0x20;
				}
			}
			return new String(contentCharArr);
		}
		return "";
	}
参考资料

ASCII码对照表