通过数组的末尾分配一个变量
Assigning a variable through the end of the array
我想弄清楚是否有办法将我的最后一个变量 (var4
) 分配给 [2]
之后数组的其余部分。
static void Main(string[] args)
{
string var1;
string var2;
string var3;
string var4;
string readContents;
using (StreamReader streamReader = new StreamReader(@"File.txt"))
{
readContents = streamReader.ReadToEnd();
string[] lines = readContents.Split('\r');
foreach (string s in lines)
{
string[] lines2 = s.Split('\t');
var1 = lines2[0];
var2 = lines2[1];
var3 = lines2[2];
var4 = lines2[3];
Console.WriteLine("Var1: {0}\nVar2: {1}\nVar3: {2}\nVar4: {3}", var1, var2, var3, var4);
Console.ReadLine();
}
}
}
每个变量都由制表符分隔,因此拆分有效。但是在 IP 地址之后,我希望在 var4
.
内获得整个错误消息(包括制表符,并运行到数组的末尾)
文件内容:
2015-04-19 00:00:00 HostName.ErrorLevel IP Address "Error Message"
2015-04-19 00:00:00 HostName.ErrorLevel IP Address "Error Message"
2015-04-19 00:00:01 HostName.ErrorLevel IP Address "Error Message"
嗯,你可以试试
var4 = String.Join(" ", lines2.Skip(3));
这将使用 space 作为分隔符连接 lines2
数组中索引 > 2 的所有条目(即跳过前三个元素)。
Split
有一个可选的附加参数 int count
。如果你给它传递一个数字,它不会将字符串拆分成多个元素,将字符串的其余部分放入最后一个元素。
我想弄清楚是否有办法将我的最后一个变量 (var4
) 分配给 [2]
之后数组的其余部分。
static void Main(string[] args)
{
string var1;
string var2;
string var3;
string var4;
string readContents;
using (StreamReader streamReader = new StreamReader(@"File.txt"))
{
readContents = streamReader.ReadToEnd();
string[] lines = readContents.Split('\r');
foreach (string s in lines)
{
string[] lines2 = s.Split('\t');
var1 = lines2[0];
var2 = lines2[1];
var3 = lines2[2];
var4 = lines2[3];
Console.WriteLine("Var1: {0}\nVar2: {1}\nVar3: {2}\nVar4: {3}", var1, var2, var3, var4);
Console.ReadLine();
}
}
}
每个变量都由制表符分隔,因此拆分有效。但是在 IP 地址之后,我希望在 var4
.
文件内容:
2015-04-19 00:00:00 HostName.ErrorLevel IP Address "Error Message"
2015-04-19 00:00:00 HostName.ErrorLevel IP Address "Error Message"
2015-04-19 00:00:01 HostName.ErrorLevel IP Address "Error Message"
嗯,你可以试试
var4 = String.Join(" ", lines2.Skip(3));
这将使用 space 作为分隔符连接 lines2
数组中索引 > 2 的所有条目(即跳过前三个元素)。
Split
有一个可选的附加参数 int count
。如果你给它传递一个数字,它不会将字符串拆分成多个元素,将字符串的其余部分放入最后一个元素。