このような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アドレスを取得する方法は?
var ips = File.ReadLines("path")
.Select(line => IPAddress.Parse(line))
.ToList();
ips[i].GetAddressBytes()
アドレスを分割するために使用できます。
var ipAddresses = File.ReadAllLines(@"C:\path.txt");
これにより、テキスト ファイルの各行に個別の文字列を含む配列が作成されます。
また、ipaddress.tryparse を使用して読み取った文字列を検証します - http://msdn.microsoft.com/en-us/library/system.net.ipaddress.tryparse.aspx
個々の IP アドレスを 4 つのコンポーネントに分割する場合は、 を使用します。これにより、各部分を含むstring.Split(char[])
が得られます。string[]
例えば:
string[] addressSplit = "10.1.11.88".Split('.');
// gives { "10", "1", "11", "88" }
これはうまくいくはずです。ここに魚があります:
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();
}
}
}
}