如何用Framework 4.6解析C#上的IPAddress
在使用Framework 4.6的C#上,如何正确地将IPAddress从String解析为System.Net.IPAddress 我正试图使用Visual Studio 2017 NuGet TCPSimple实现一个TCP/IP服务器和客户端以进行测试,但我得到一个System.FormatException“输入字符串的格式不正确” 我尝试过不同的方法,但它们根本不起作用如何用Framework 4.6解析C#上的IPAddress,c#,C#,在使用Framework 4.6的C#上,如何正确地将IPAddress从String解析为System.Net.IPAddress 我正试图使用Visual Studio 2017 NuGet TCPSimple实现一个TCP/IP服务器和客户端以进行测试,但我得到一个System.FormatException“输入字符串的格式不正确” 我尝试过不同的方法,但它们根本不起作用 private void btnStart_Click(object sender, EventArgs e
private void btnStart_Click(object sender, EventArgs e)
{
txtStatus.Text += "Server starting...";
//var address = System.Net.IPAddress.Parse("10.0.11.174").GetAddressBytes();
//long m_Address = ((address[3] << 24 | address[2] << 16 | address[1] << 8 | address[0]) & 0x0FFFFFFFF);
System.Net.IPAddress ip = new System.Net.IPAddress(long.Parse(txtHost.Text));
//System.Net.IPAddress ip = new System.Net.IPAddress.Parse("127.0.0.1");
server.Start(ip,Convert.ToInt32(txtPort.Text));
}
private void btnStart\u单击(对象发送方,事件参数e)
{
Text+=“服务器正在启动…”;
//var address=System.Net.IPAddress.Parse(“10.0.11.174”).GetAddressBytes();
//long m_Address=((地址[3]在.NET框架中有一个方法来处理这个问题
IPAddress ip = IPAddress.Parse(txtHost.Text);
请参阅Parse()方法的示例:
它是静态的,需要一个字符串。所以
System.Net.IPAddress ip = System.Net.IPAddress.Parse(txtHost.Text);
应该做这个技巧。如果抛出FravaExtRebug,这是用户的错误,因此捕获异常并显示友好的错误消息。
< P>您可能需要考虑使用<代码> IPADES.TyPARSESER()/<代码>以防您提供无效IP。
using System;
using System.Net;
public class Program
{
public static void Main()
{
string goodIp = "127.0.0.1";
string badIp = "127.0.O.1";
IPAddress ip;
if (IPAddress.TryParse(goodIp, out ip))
{
Console.WriteLine("Start your server");
}
if (!IPAddress.TryParse(badIp, out ip))
{
Console.WriteLine("Bad IP");
}
}
}
我觉得在System.Net.IPAddress ip=new System.Net.IPAddress.Parse(txtHost.Text)中,问题在于“new”指令,因此它无法在System.Net.IPAddress上找到解析。。。。。
using System;
using System.Net;
public class Program
{
public static void Main()
{
string goodIp = "127.0.0.1";
string badIp = "127.0.O.1";
IPAddress ip;
if (IPAddress.TryParse(goodIp, out ip))
{
Console.WriteLine("Start your server");
}
if (!IPAddress.TryParse(badIp, out ip))
{
Console.WriteLine("Bad IP");
}
}
}