在下面的方法中,我将字符串smdrext设置为tmp [3]。然而,tmp [3]似乎有时是空的,因为我得到了#34;索引超出了数组的范围。"。在我设置它之前,我可以更改它确实存在以确保程序不会因此而再次停止吗?
public void WriteToCSV(string line, string path)
{
string[] tmp = line.Split(',');
string smdrext = tmp[3];
if (ext.Contains(Convert.ToString(smdrext)))
{
File.AppendAllText(path, line + "\n");
}
}
答案 0 :(得分:2)
请尝试使用以下代码段。
public void WriteToCSV(string line, string path)
{
if (!string.IsNullOrEmpty(line))
{
string[] tmp = line.Split(',');
if (tmp.Length > 3)
{
string smdrext = tmp[3];
if (ext.Contains(Convert.ToString(smdrext)))
{
File.AppendAllText(path, line + "\n");
}
}
}
}
如果有任何疑虑,请告诉我。