如何将String转换为byte []数组,反之亦然?我需要将字符串存储在一些二进制存储中。请在两个方向上显示示例。还有一件事:每个字符串可能大于90Kb。
答案 0 :(得分:20)
如果您想使用UTF-8编码:
// string to byte[]
byte[] bytes = Encoding.UTF8.GetBytes(someString);
// byte[] to string
string anotherString = Encoding.UTF8.GetString(bytes);
答案 1 :(得分:8)
在你前进并使用其中一个已经给出的例子之前,你应该知道,一般来说,字符串和字节序列之间没有唯一的映射。字符串如何映射到二进制(反之亦然)取决于您使用的encoding。 Joel Spolsky在这个问题上写了awesome article。
当解码二进制文件以获取字符串时,您需要使用与用于生成二进制文件相同的编码,否则您将遇到问题。
答案 2 :(得分:3)
使用Encoding
类。
答案 3 :(得分:1)