admin 管理员组

文章数量: 887021


2024年2月19日发(作者:自动调速系统总结)

C#

如何将一个字符串转换成字节数组”与“如何将一个字节

数组转换成一个字符串

“如何将一个字符串转换成字节数组”与“如何将一个字 节数组转换成一个字符串”两者使用的时机视数据内容而定, 您必须根据不同的数据内容来套用不同的编码或是译码函 式,以便取得对应的字节或是字符串数据。

程序范例

本程序范例将建立四种不同的字节数据,并使用三种不同的 编码方式将原本的字节数据转换为字符串,观察编码函式处 理后所产生之结果,程序代码如下所示:

static void Main(string[]

args)

{

byte[] ibyte1, ibyte2, ibyte4;

byte[] ibyte3 = new byte[1024];

ibyte1 =

es("");

ibyte2 = es("

章立民

");

().GetBytes(ibyte3);

ibyte4 = new byte[]{0,1,2,3,4};

Show(ibyte1);

Show(ibyte2);

Show(ibyte3);

Show(ibyte4);

ne();

}

private static void Show(byte[] Ibyte)

{

ine("/*

***/n";

******************************************

ine("Ibyte[0]:" + Ibyte[0].ToString() +

"n"); string ascii2str =

ing(Ibyte);

ine("ascii2str:" + ascii2str + "t");

ine(":" +

+ n");

string unicode2str = ing(Ibyte);

ine("unicode2str:" + unicode2str + "t");

ine(":" +

+ "n");

string utf82str = ing(Ibyte);

ine("utf82str:" + utf82str + "t");

ine(":" +

+ "n");

byte[] ascii2byte = es(ascii2str);

byte[] unicode2byte =

es(unicode2str);

byte[] utf82byte = es(utf82str);

ine( + " " +

+ " " + + "n");

******************************************

ine("/*

***/n";

}

执行完程序之后发现,

ibyte1

变量以

ASCII

或是

UTF8

编 码后,产生的字符串内容与长度皆与原来变量相同。

ibyte2

变量以

ASCII

或是

UTF8

编码后, 虽然产生的字符串数据 长度与原来变量相同,但是数据内容与原来的变量不同。

ibyte3

变量以

ASCII

编码后, 产生的字符串数据长度与原来 变量相同。

ibyte4

变量以

ASCII

或是

UTF8

编码后,产 生的字符串数据长度与原来变量相同,但是数据内容与原来 的变量不同。

从以上的结果可以得知,将字节转换为字符串之前,必须先 针对数据内容,选择适合的转换函式,才能够得到符合需求 的结果。


本文标签: 字符串 数据 字节 转换 产生