C#将字节转换为字符串并写入txt文件

5

如何将一个字节数组 byte[] b = new byte[1]; b[1]=255 转换成字符串? 我需要一个字符串变量,其值为 "255" string text= "255";,然后将它存储在一个文本文件中?


承认困惑...... - Tony Hopkinson
那个数组里存储了什么?字符吗? - Rashack
2个回答

15

从字节开始:

        byte[] b = new byte[255];
        string s = Encoding.UTF8.GetString(b);
        File.WriteAllText("myFile.txt", s);

如果你从字符串开始:

        string x = "255";
        byte[] y = Encoding.UTF8.GetBytes(x);
        File.WriteAllBytes("myFile2.txt", y);

这不会生成字符串"255",而是返回字节值为255的UTF8字符。 - Jesse Webb
正如 @Dave 所写,问题不够清晰。所以我的意图是向 OP 展示如何在字节和字符串之间进行转换,并将结果写入文件。我相信这就是他在这种情况下所需要的全部。 - Gregor Primar
不好意思,我不是那个意思。我需要一个字节b=255;来生成一个字符串text="255"; - redfrogsbinary
如果你只需要这个,那么这不是问题:byte bValue = 255; string sValue = bValue.ToString(); - Gregor Primar
如果bValue是一个数组呢?byte bValue[]我猜测应该是bValue[k].ToString(); - redfrogsbinary
这也不是问题。只需使用特定的索引,以下是示例:byte[] bValue = new byte[] { 255 }; string sValue = bValue[0].ToString(); - Gregor Primar

3

不需要转换为字符串。您可以直接使用File.WriteAllBytes

File.WriteAllBytes(@"c:\folder\file.txt", byteArray);

但是如果我想在写入文本文件之前先获取一个字符串呢? - redfrogsbinary

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接