0

假设我有一个包含以下内容的二进制文件:

abc\0def\0ghi\0

内容已被读取并存储在字符串变量 s 中。我应该如何将组件“abc”、“def”、“ghi”提取到不同的字符串标记中?常用的方法如 split、stringTokenizer 不接受\0作为分隔符。

4

2 回答 2

7

\0null 字符,因此您可以将其 unicode 表示形式用作分隔符。

String content = "abc\0def\0ghi\0";
String[] components = content.split("\u0000");

但是,您可以只使用“\0”作为分隔符来分割。

于 2012-09-26T12:56:21.153 回答
1

如果原始字符串是,"abc\\0def\\0ghi\\0"那么您可以使用split("\\\\0")

"abc\\0def\\0ghi\\0".split("\\\\0")

如果原始字符串是,"abc\0def\0ghi\0"那么您可以使用split("\0")

"abc\0def\0ghi\0".split("\0")
于 2012-09-26T13:03:14.720 回答