C# 如何将不是单个字符的字符串列表转换为 char?
C# How to convert a list of strings with not a single character to char?
我有一个字符串列表,里面有这样的项目 - 65,66...等等。
当我尝试使用 Convert.ToChar(item)
时,出现错误提示单个字符串应该只有一个字符。我无法理解的是,除了 Convert
函数之外,我真正可以使用什么将 65(字符串)转换为 char = A
值。
static void Main(string[] args)
{
List<char> Alphabet = new List<char>();
List<string> Message = new List<string>();
for (int i = 65; i < 91; i++)
{
Alphabet.Add((char)i);
}
var stroke = Console.ReadLine().ToString();
foreach (var letter in stroke)
{
if (Alphabet[Alphabet.Count - 1] == letter)
{
Message.Add((66.ToString()));
}
if (Alphabet[Alphabet.Count - 2] == letter)
{
Message.Add((65.ToString()));
}
if (Convert.ToChar(" ") == letter)
{
Message.Add(" ");
}
foreach (var item in Alphabet)
{
if (item == letter && letter != Alphabet[Alphabet.Count -1] && letter != Alphabet[Alphabet.Count - 2])
{
Message.Add((item + 2).ToString());
}
}
}
foreach (var item in Message)
{
if (item != " ")
{
Console.Write(Convert.ToChar(Convert.ToInt16(item)));
}
else
{
Console.Write(" ");
}
}
Console.ReadLine();}
这是结束工作代码,对于那些可能想知道为什么我需要这种类型的 convert.Its Caesarus 加密器的人。仅适用于大写字母,但在上面那些人的帮助下现在可以使用了。
如果你的列表项是int值,比如65,66,...好像是字符编码,你可以试试:
Convert.ToChar(Convert.ToInt32(item))
例如:
var str="65";
var chr= Convert.ToChar(Convert.ToInt32(str));
//The output is A
加密:
var stroke = Console.ReadLine();
var enc = new String(stroke.ToCharArray().Select(c=>Convert.ToChar(c+2)).ToArray());
Console.WriteLine(enc);
我有一个字符串列表,里面有这样的项目 - 65,66...等等。
当我尝试使用 Convert.ToChar(item)
时,出现错误提示单个字符串应该只有一个字符。我无法理解的是,除了 Convert
函数之外,我真正可以使用什么将 65(字符串)转换为 char = A
值。
static void Main(string[] args)
{
List<char> Alphabet = new List<char>();
List<string> Message = new List<string>();
for (int i = 65; i < 91; i++)
{
Alphabet.Add((char)i);
}
var stroke = Console.ReadLine().ToString();
foreach (var letter in stroke)
{
if (Alphabet[Alphabet.Count - 1] == letter)
{
Message.Add((66.ToString()));
}
if (Alphabet[Alphabet.Count - 2] == letter)
{
Message.Add((65.ToString()));
}
if (Convert.ToChar(" ") == letter)
{
Message.Add(" ");
}
foreach (var item in Alphabet)
{
if (item == letter && letter != Alphabet[Alphabet.Count -1] && letter != Alphabet[Alphabet.Count - 2])
{
Message.Add((item + 2).ToString());
}
}
}
foreach (var item in Message)
{
if (item != " ")
{
Console.Write(Convert.ToChar(Convert.ToInt16(item)));
}
else
{
Console.Write(" ");
}
}
Console.ReadLine();}
这是结束工作代码,对于那些可能想知道为什么我需要这种类型的 convert.Its Caesarus 加密器的人。仅适用于大写字母,但在上面那些人的帮助下现在可以使用了。
如果你的列表项是int值,比如65,66,...好像是字符编码,你可以试试:
Convert.ToChar(Convert.ToInt32(item))
例如:
var str="65";
var chr= Convert.ToChar(Convert.ToInt32(str));
//The output is A
加密:
var stroke = Console.ReadLine();
var enc = new String(stroke.ToCharArray().Select(c=>Convert.ToChar(c+2)).ToArray());
Console.WriteLine(enc);