c# - 使用 Encoding.ASCII.GetString 时获取未知字符
问题描述
我不经常发布问题,所以请多多包涵。我正在用 C# 为一个项目创建一个简单的客户端服务器。用户输入他们的名字,然后它被发送到服务器,基本上服务器应该用一个 int 响应。然后,客户端应采用该 int 并使用 DestinyNumberMeaning 方法,该方法应发出打印语句。
我正在尝试获取 stringData(我认为这只是来自服务器的 int)并转换为 int。我的问题是,当 stringData 存储像 � 这样的字符时,显然无法将其转换为 int。任何帮助,将不胜感激。
while (true)
{
Console.WriteLine("Type your full Name: ");
string name = Console.ReadLine();
if (isValid(name))
{
name = name.ToLower();
data = Encoding.ASCII.GetBytes(name);
server.Send(data, data.Length);
data = server.Receive(ref sender);
stringData = Encoding.ASCII.GetString(data, 0, data.Length);
int num = Convert.ToInt32(stringData);
DestinyNumberMeaning(num);
Console.WriteLine("Data: "+stringData);
}
else Console.WriteLine("Not Valid, Try Again\n");
}
解决方案
推荐阅读
- javascript - 来自网页的 Javascript JSON 图像
- php - 如何在 ForEach 循环内的 Laravel Blade 中显示摘要数据?
- git - Transfering repository of project from company to github with submodules
- julia - 如何在 Julia 中定义非 1 或任意索引数组?
- r - 基于多列的特定序列的R dplyr过滤器
- swift - Firestore 查询问题
- testing - 为什么 HttpClient 类型的 getnow() 方法未定义?
- amazon-web-services - 如何防止通过 IP 地址访问 AWS beanstalk 应用程序?
- arrays - 请求 wsdl 服务数组对象
- laravel - 为什么在 AWS ubuntu 上安装 laravel 8 应用程序我在屏幕上出现错误?