我有以下一段代码,可以从文件中提取一些信息。
private string[][] users;
private string userID;
public void getInfo()
{
string[] lines = System.IO.File.ReadAllLines(@"U:\Final Projects\Bank\ATM\db.txt");
for (int i = 0; i < lines.Count(); i++ )
{
string[] values = lines[i].Split(',');
for (int b = 0; b < 5; b++ )
{
users[i][b] = values[b];
}
}
}
行users[i][b] = values[b];
返回错误:“对象引用未设置为对象的实例。”但我不确定原因。代码是假设读取每一行并将行分割为,
并从信息中创建二维数组。
答案 0 :(得分:2)
我认为你需要为数组分配空间
string[,] users = new string[M,N];
答案 1 :(得分:0)
除非您没有向我们展示代码,否则您从未真正创建过该阵列。因此,users
将为null
,因此尝试取消引用它是没有意义的。因此,例外。
答案 2 :(得分:0)
您需要分配users
:
string[][] users = new string[n][];
for(int i = 0; i < n; i++)
{
users[i] = new string[m];
}
n
和m
可以是变量。