为什么字符串在C#中打印为unicode字符而不是可读文本?
我创建了一个字符串作为get;集合;:为什么字符串在C#中打印为unicode字符而不是可读文本?,c#,string,unicode,char,C#,String,Unicode,Char,我创建了一个字符串作为get;集合;: 公共静态字符串userDirInput{get;set;} 我使用Console.Read()为其指定一个值: userDirInput=Convert.ToString(Console.Read()) 在比较之前,我先把它打印出来: Console.Write(“读取为”+(字符串)userDirInput) 它打印出unicode值和不可读的文本 如何使其打印出可读文本?这是因为返回一个int,因此更适合获取char: int i = Console.
公共静态字符串userDirInput{get;set;}
我使用Console.Read()代码>为其指定一个值:
userDirInput=Convert.ToString(Console.Read())代码>
在比较之前,我先把它打印出来:
Console.Write(“读取为”+(字符串)userDirInput)代码>
它打印出unicode值和不可读的文本
如何使其打印出可读文本?这是因为返回一个int
,因此更适合获取char
:
int i = Console.Read();
char ch = Convert.ToChar(i);
使用ReadLine
以字符串形式获取输入:
string input = Console.ReadLine();
这是因为返回一个int
,所以更适合获取char
:
int i = Console.Read();
char ch = Convert.ToChar(i);
使用ReadLine
以字符串形式获取输入:
string input = Console.ReadLine();
您可能想使用,它返回一个字符串
。仅读取单个字符,并将其作为Int32
返回。如果将其转换为char
,您会看到您正在读取用户键入的第一个字母,而不是整个字符串。您可能想要使用,它返回一个字符串。仅读取单个字符,并将其作为Int32
返回。如果将其强制转换为char
,您将看到您正在读取用户键入的第一个字母,而不是整个字符串。您可以尝试转换.ToChar(Console.Read()).ToString() 您可以尝试Convert.ToChar(Console.Read()).ToString() 控制台的字体是否支持完整的unicode字符集?。尝试将字体设置为您知道支持unicode的字体。输入是什么?你看到了什么?您的其余代码在哪里?@Abbas您不需要其他任何东西,因为所有信息都与问题有关。控制台的字体是否支持完整的unicode字符集?。尝试将字体设置为您知道支持unicode的字体。输入是什么?你看到了什么?你剩下的代码在哪里?@Abbas你不需要其他任何东西,因为所有的信息都与问题有关。你是对的。。。非常感谢。我不知道为什么我没有想到。你是对的。。。非常感谢。我不知道为什么我没有想到这一点。我也是第一个发布答案的人,但这并不重要。不必道歉,这是你的决定,只要选择最好的答案。我也是第一个发布答案的人,但这并不重要。不必道歉,这是你的决定,只要选择最好的答案。