需要一种以二进制格式打印字符串的方法吗?

时间:2014-05-13 16:37:47

标签: java

我有一个字符串。它包含一些空白区域。我不知道这些空白是什么。它们可能是一个空格,或者是一个标签......或者其他。

所以我只想打印二进制格式的字符串。

另外,如何使用String.replace()过滤掉二进制格式的某些字符?或者我需要使用其他类型的API来过滤掉二进制格式的特殊字符。

例如,如何过滤掉字符串中的chr(10)。 (chr(10)表示Chang Line)

找出原因:

我使用这些行来打印这个空白:

for (char ch : MyString.toCharArray()) {
        System.out.format("%H ", ch);
    }

我得到了它的结果。它" 3000"。

我检查了UTF-8表,发现3000看起来真的是空白。

然后我只使用此代码删除此空格:

MyString = MyString.replaceAll("\u3000", "");

现在一切都变好了。

非常感谢大家的帮助!!

2 个答案:

答案 0 :(得分:1)

使用正则表达式。 \s表示空格。

str.replace( "\\s+", "" );

答案 1 :(得分:0)

使用String.toCharArray(),遍历所有char,使用String.toString((int)char),16)获取十六进制值。为了便于阅读,请单独使用“”或“,”。