很长一段时间后,我设法从我在第一个问题中询问的程序中得到了答案。它将随机数添加到列表中以用作 ID 号,然后将其导出到 Excel。但是,当在我的数据文件中使用超过 2 个数据成员时,我遇到了一个问题:我生成的随机数加倍,导致我的程序崩溃。
static Dictionary<string,Backup> getData()
{
Dictionary<string, Backup> bDict = new Dictionary<string, Backup>();
StreamReader reader = new StreamReader("/data/storedata.txt");
while (!reader.EndOfStream)
{
string line = reader.ReadLine();
string[] parts = line.Split(' ');
string item = parts[0];
string owner = parts[1];
Random rnd = new Random();
int test = rnd.Next(item.Length+10000);//For every 'item' a Random number is generated.(the +10000 is simply to produce a 4-digit number)
//Console.WriteLine(test);//Testing
Backup BP = new Backup(item, owner,test);
bDict.Add(test.ToString(), BP);//Adding to the Dictionary.
//Console.WriteLine(string.Format("{0}, {1}, {2}", item, test, owner));
}
return bDict;
}//Read file, Grabed data and stored it in a List.
我想要/尝试做的是进行一种检查,如果两个数字相同,则会生成一个新数字作为替换(或做同样事情的其他方式)。我已经尝试过 if 语句,但 VS 一直在询问我是否打算与其他东西进行比较。我已经在 Stackoverflow 上查看了这里的内容,但答案不符合我的代码所发生的情况。任何帮助表示赞赏。
常见问题数据文件将有超过 500 个“项目”,没有最小/最大
干杯