-2

我有这样的 ip 地址内容的文本文件

10.1.11.88
10.1.11.52
10.1.11.35
10.1.11.95
10.1.11.127
10.1.11.91

如何SPLIT从文件中获取IP地址?

4

5 回答 5

6
var ips = File.ReadLines("path")
            .Select(line => IPAddress.Parse(line))
            .ToList();

您可以使用ips[i].GetAddressBytes()拆分地址。

于 2012-09-24T21:07:26.653 回答
1
var ipAddresses = File.ReadAllLines(@"C:\path.txt");

这将为文本文件的每一行创建一个带有单独字符串的数组。

于 2012-09-24T21:03:25.853 回答
1

我还将验证使用 ipaddress.tryparse 读取的字符串 - http://msdn.microsoft.com/en-us/library/system.net.ipaddress.tryparse.aspx

于 2012-09-24T21:06:08.760 回答
1

如果您希望将单个 IP 地址拆分为其四 (4) 个组件,请使用string.Split(char[]),这将为您提供string[]包含每个部分的内容。

例如:

string[] addressSplit = "10.1.11.88".Split('.');
// gives { "10", "1", "11", "88" }
于 2012-09-24T21:09:02.643 回答
0

这应该适合你。这是鱼:

using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {

            System.IO.StreamReader myFileStream;
            string strFileLine;
            String[] arrAddressString;


            myFileStream = new System.IO.StreamReader("c:\\myTextFile.txt");
            // where "c:\\myTextFile.txt" is the file path and file name.

            while ((strFileLine = myFileStream.ReadLine()) != null)
            {

                arrAddressString = strFileLine.Split('.');

            /*
               Now we have a 0-based string arracy
               p.q.r.s: such that arrAddressString[0] = p, arrAddressString[1] = q,
               arrAddressString[2] = r, arrAddressString[3] = s
            */

            /* here you do whatever you want with the values in the array. */

                // Here, i'm just outputting the elements...

                for (int i = 0; i < arrAddressString.Length; i++)
                {
                    System.Console.WriteLine(arrAddressString[i]);
                }

                System.Console.ReadKey();
             }
        }
    }
}
于 2012-09-25T01:10:37.887 回答