我怎样才能把一个字符串放在一行中

How can i put a string in one line

我正在做一些转换,从十六进制到 Ascii,当我转换字符串时,我得到以下示例:

F23C040100C1

100D200000000000

0000

我知道字符串是这样的,因为基数是 16,但我也想把它放在一行中,像这样:

F23C040100C1100D2000000000000000

我该怎么做?

我试过:

mensagem.replaceAll("\r\n", " ");

您可能 运行 遇到多个问题,因此我将在这个答案中涵盖所有问题。

首先,String 上任何看似修改它的方法实际上 return String 的新实例。这意味着如果你这样做:

String something = "Hello";
something.replaceAll("l", "");
System.out.println(something); //"Hello"

你会想做的

something = something.replaceAll("l", "");

或者你的情况

mensagem = mensagem.replaceAll("\r\n", " ");

其次,换行符中可能没有任何\r,但有一个\n,反之亦然。因此,您想说

if \r exists, remove it. if \n exists, also remove it

您可以这样做:

mensagem = mensagem.replaceAll("\r*\n*", " ");

正则表达式中的 * 运算符表示匹配零个或多个前面的符号。

mensagem.replaceAll("\r\n|\r|\n", "");