文本框翻译成地址

时间:2014-03-25 09:45:37

标签: c# winforms

我在一个我们进行大量远程故障排除的环境中工作。我正在开发一个C#控制台 Windows应用程序,它可以加快登录不同程序的过程。

这是一个多标签应用程序,在第一个窗口中,有一个文本框,用户输入一个站点编号。

我想要帮助的是如何编写能够读取该3位或4位站点号并将其转换为IP地址的代码?

在应用程序的一部分中,我需要它将其转换为URL中的IP地址。例如,假设用户想要连接到站点1234处的服务器。他们在主页面的文本框中输入1234,然后单击“服务器”选项卡上的“连接”。我需要站点号将自己植入URL中,看起来像//10.12.34.1:80/。

1 个答案:

答案 0 :(得分:0)

我回答这个问题只是为了向您展示您可以轻松实现简化的要求。

如果你只需要决定3到4个char输入值并硬编码目标IP地址的开始和结束,这应该可以解决这个问题:

string userinput; // 3 or 4 char user input from TextBox
string secondoctet = string.Empty;
string thirdoctet = string.Empty;

if (userinput.Length == 3)
{
    secondoctet = userinput.Substring(0, 1);
    thirdoctet = userinput.Substring(1, 2);
}

if (userinput.Length == 4)
{
    secondoctet = userinput.Substring(0, 2);
    thirdoctet = userinput.Substring(2, 2);
}

// using hardcoded IP format template inserting 2nd and 3rd octet into placeholders
string targetip = string.Format("10.{0}.{1}.1", secondoctet, thirdoctet);

请记住,此解决方案仅限于简单的规则,即3-char输入将始终分为1-2,而4-char输入将始终以2-2分割。

正如我在评论中已经提到的那样,毫无疑问,你很快就会面临根据不同规则进行分裂的要求。