问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

可否教我这个问题的ascii码如何转换成字符的吗?

发布网友 发布时间:2022-04-23 19:22

我来回答

1个回答

热心网友 时间:2023-07-03 02:36

就是double('字符')转为ASCII码 char(ASCII)转为字符串
解决方法如下:
如果还想从 System.String 类中找到方法进行字符串和字节数组之间的转换,恐怕你会失望了。为了进行这样的转换,我们不得不借助另一个类:System.Text.Encoding。该类提供了 bye[] GetBytes(string) 方法将字符串转换成字节数组,还提供了 string GetString(byte[]) 方法将字节数组转换成字符串。
  System.Text.Encoding 类似乎没有可用的构造函数,但我们可以找到几个默认的 Encoding,即 Encoding.Default(获取系统的当前 ANSI 代码页的编码)、Encoding.ASCII(获取 7 位 ASCII 字符集的编码)、Encoding.Unicode(获取采用 Little-Endian 字节顺序的 Unicode 格式的编码)、Encoding.UTF7(获取 UTF-7 格式的编码)、Encoding.UTF8(获取 UTF-8 格式的编码) 等。这里主要说说 Encoding.Default 和 Encoding.Unicode 用于转换的区别。
  在字符串转换到字节数组的过程中,Encoding.Default 会将每个单字节字符,如半角英文,转换成 1 个字节,而把每个双字节字符,如汉字,转换成 2 个字节。而 Encoding.Unicode 则会将它们都转换成两个字节。我们可以通过下列简单的了解一下转换的方法,以及使用 Encoding.Default 和 Encodeing.Unicode 的区别:

private void TestStringBytes() {
string s = "C#语言";
byte[] b1 = System.Text.Encoding.Default.GetBytes(s);
byte[] b2 = System.Text.Encoding.Unicode.GetBytes(s);
string t1 = "", t2 = "";
foreach (byte b in b1) {
t1 += b.ToString("") + " ";
}
foreach (byte b in b2) {
t2 += b.ToString("") + " ";
}
this.textBox1.Text = "";
this.textBox1.AppendText("b1.Length = " + b1.Length + "\n");
this.textBox1.AppendText(t1 + "\n");
this.textBox1.AppendText("b2.Length = " + b2.Length + "\n");
this.textBox1.AppendText(t2 + "\n");
}

  运行结果如下,不说详述,相信大家已经明白了。

b1.Length = 6
67 35 211 239 209 212
b2.Length = 8
67 0 35 0 237 139 0 138

  将字节数组转换成字符串,使用 Encoding 类的 string GetString(byte[]) 或 string GetString(byte[], int, int) 方法,具体使用何种 Encoding 还是由编码决定。在 TestStringBytes() 函数中添加如下语句作为实例:

byte[] bs = {97, 98, 99, 100, 101, 102};
string ss = System.Text.Encoding.ASCII.GetString(bs);
this.textBox1.AppendText("The string is: " + ss + "\n");

  运行结果为:The string is: abcdef
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 c语言中如何将ascii码转换成汉字 Java中,如何把ascii码转换成字符? c++中如何将一个ascii码转成对应的字母? 怎么把ascii码转换成字符,并字符转换成ascii C语言,ASCII码怎么转换为字符? 怎样把ascii转化成汉字 宫保鸡丁的做法和步骤是什么? 宫保鸡丁正宗做法? 宫保鸡丁的推荐做法? 宫保鸡丁的做法 是什么? 找一个宫保鸡丁的做法 宫保鸡丁具体的做法? 手机微信定位怎么设置 宫保鸡丁的制作方法、吃法、味道50字? 快手的作品怎么无缘无故保存不了 为什么快手上自己发的作品只能保存一张照片,不能保存作品? 快手编辑个人资料为什么保存不了,昵称和图片改后,也没见有保存字样 快手上的图片怎么保存,复制链接到QQ微信和QQ浏览器都不行? 微信差除了,从新安装怎么安装呢? 新电脑安装微信如何装 怎么通过ascii 把数字转换成字母 在C#中怎么将ASCII转换为汉字或者字符 ASCII码如何转换为字符串或者是汉字啊? JavaScript里面如何实现ascii码与字符的转换 易语言。怎么去字符的ASCII码?怎么再将ASCII码转换成字符? ASCII 码转换成字符串 用VB把字符转换为ASCII ascii转换为字符 matlab中 ASCII码转化为字符(中文) C# ascii转字符 如何将ascii字符串转换成中文 怎么把汉字转换成ASCII编码 android 怎么将ASCII转换成字母 煮的是什么意思 怎么煮汤米丝 煮多长时间? 煮える 和 煮る 的区别是什么? 按错键,ps不知道怎么变成黑白的了 PS里彩色图片粘贴后变成黑白了怎么办? 结构化程序设计和面向对象程序设计的主要特征各是什么? 如果在外面招聘发朋友圈怎么写标题