如何使用C#进行排序IP地址列表 [英] How to sort list of Ip Addresses using c#

查看:295
本文介绍了如何使用C#进行排序IP地址列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有IP地址的列表如下:

  192.168.1.5
69.52.220.44
10.152.16.23
192.168.3.10
192.168.1.4
192.168.2.1
 

我在找这样的方式该列表以匹配以下顺序排序

  10.152.16.23
69.52.220.44
192.168.1.4
192.168.1.5
192.168.2.1
 

解决方案

这看起来是一个黑客,但它不正是你所需要的:

  VAR unsortedIps =
    新[]
    {
        192.168.1.4,
        192.168.1.5,
        192.168.2.1,
        10.152.16.23,
        69.5​​2.220.44
    };

VAR sortedIps = unsortedIps
    。选择(Version.Parse)
    .OrderBy(ARG => ARG)
    。选择(ARG => arg.ToString())
    .ToList();
 

I've a list of IP addresses as follows

192.168.1.5
69.52.220.44
10.152.16.23
192.168.3.10
192.168.1.4
192.168.2.1

I'm looking for such a way to sort this list to match the below order

10.152.16.23
69.52.220.44
192.168.1.4
192.168.1.5
192.168.2.1

解决方案

This might look as a hack, but it does exactly what you need:

var unsortedIps =
    new[]
    {
        "192.168.1.4",
        "192.168.1.5",
        "192.168.2.1",
        "10.152.16.23",
        "69.52.220.44"
    };

var sortedIps = unsortedIps
    .Select(Version.Parse)
    .OrderBy(arg => arg)
    .Select(arg => arg.ToString())
    .ToList();

这篇关于如何使用C#进行排序IP地址列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆