c# - 将 int 转换为 ascii char c#

标签 c# ascii

<分区>

我有一个整数,我想显示关联字母。比如int是“1”,我想显示“a”。

我有一个变量“word”,我想在其中添加这个字母。这是我的代码:

word += (i+96).ToString();
Console.WriteLine(word);

但是在控制台中,我有一个数字列表。我找到了 Encoding.ASCII.GetChars 但它需要一个 byte 参数。请问我该怎么办?

最佳答案

您可以使用其中一种方法将数字转换为 ASCII/Unicode/UTF-16 字符:

您可以使用这些方法将指定的 32 位有符号整数的值转换为其 Unicode 字符:

char c = (char)65;
char c = Convert.ToChar(65); 

但是,ASCII.GetString将字节数组中的一系列字节解码为字符串:

string s = Encoding.ASCII.GetString(new byte[]{ 65 });

请记住,ASCIIEncoding 不提供错误检测。任何大于十六进制 0x7F 的字节都被解码为 Unicode 问号(“?”)。

因此,为了解决您的问题,您可以使用以下方法之一,例如:

word += (char)(i + 96);

关于c# - 将 int 转换为 ascii char c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34556549/

相关文章:

c# - 线程并行编程

c# - WPF DataGrid 通过绑定(bind)设置样式

c# - PDFsharp 保存到 MemoryStream

ruby - 如何摆脱 ruby 中的非ascii字符

ruby - 如何在 ruby​​ 中以简单而强大且可移植的方式以可验证的方式签署文本?

c++ - ^= 32 背后的想法是什么,它将小写字母转换为大写字母,反之亦然?

c# - 如何将异步与锁定结合起来?

c# - 如何防止'字符被输入到文本框中?

c - 在 C 中存储字符的十六进制等效值

c++ - 自制维吉尼亚密码;使用 ascii 字符操作