我正在尝试在文本文件中显示字节数组的内容.
这是我的代码:
var writer = new System.IO.StreamWriter(Application.StartupPath + @"\B323.txt");
writer.Write(data.ToString());
writer.Close();
writer.Dispose();
Run Code Online (Sandbox Code Playgroud)
data是一个byte []数组.
输出是"System.Byte []",为什么?
我正在尝试显示这个数组的内容,问题出在哪里?
当你打电话byte[].ToString()那只是回来System.Byte[].你是如何打算转换字节数组的?有许多方法可以将字节转换为字符串.
如果你想把它作为"十六进制转储"你可以BitConverter.ToString(byte[])产生诸如的输出
5B-3E-5D
Run Code Online (Sandbox Code Playgroud)
这就是你要追求的吗?如果您确实只想将字节写入文件,因为它们已经表示编码文本,那么您应该使用a FileStream而直接写入它们.
(作为旁白的其他要点:你应该使用一个using语句来处理作者;你不需要调用close因为你已经在处理;这File.WriteAllText是一个更简单的方法来开始.)