如何从Java中的字符串中删除空字符(\ 0)

我知道C#中的这段代码试图从字符串中删除nul字符( \0 )。

 string.Join("", mText.Split(new string[] { "\0" }, StringSplitOptions.None)); 

有没有办法在Java中有效地做到这一点?

你可以写:

 mText.replace("\0", ""); 

在Java 8+中,您可以使用StringJoiner和lambda表达式

 String str = "abc\0def"; StringJoiner joiner = new StringJoiner(""); Stream.of(str.split("\0")).forEach(joiner::add); System.out.println(str); System.out.println(joiner); 

输出是

 abc abcdef