读取随机的 Pastebin 行
Read Random Pastebin Lines
我正在尝试找到一种从 Pastebin 中读取随机行的方法
string line = "";
WebClient WC = new WebClient();
List<string> TEST = new List<string>();
Random Rand = new Random();
line = WC.DownloadString("Pastebin");
TEST.Add(line);
button1.Text = TEST[Rand.Next(1, TEST.Count)];
但是代码的问题是它响应这个
它给出了这个错误
System.ArgumentOutOfRangeException: '索引超出范围。必须为非负数且小于集合的大小。
参数名称:index'
有没有可能的解决方案
如果可以的话,你能解释一下你是如何修复它的,这样我以后就可以解决它了。
所以..你从 pastebin 下载一个字符串
你把这个字符串放在一个新列表中,所以它在索引 0 处结束。列表包含 1 个字符串,所以列表计数是 1
你向 Random 询问了一个介于 1 和 1 之间的新随机值,这将使它给你 1
然后您要求列表为您提供索引 1 处的字符串.. 但该索引处没有任何字符串。唯一有效的列表索引是 0。这会导致超出范围的异常。
我建议您拆分下载的文本并将其添加到列表中
TEXT.AddRange(line.Split('\n'))
此外,随机给你 return 你一个介于 0 和 count 之间的值,否则你永远不会得到第一行
我正在尝试找到一种从 Pastebin 中读取随机行的方法
string line = "";
WebClient WC = new WebClient();
List<string> TEST = new List<string>();
Random Rand = new Random();
line = WC.DownloadString("Pastebin");
TEST.Add(line);
button1.Text = TEST[Rand.Next(1, TEST.Count)];
但是代码的问题是它响应这个 它给出了这个错误 System.ArgumentOutOfRangeException: '索引超出范围。必须为非负数且小于集合的大小。 参数名称:index'
有没有可能的解决方案
如果可以的话,你能解释一下你是如何修复它的,这样我以后就可以解决它了。
所以..你从 pastebin 下载一个字符串
你把这个字符串放在一个新列表中,所以它在索引 0 处结束。列表包含 1 个字符串,所以列表计数是 1
你向 Random 询问了一个介于 1 和 1 之间的新随机值,这将使它给你 1
然后您要求列表为您提供索引 1 处的字符串.. 但该索引处没有任何字符串。唯一有效的列表索引是 0。这会导致超出范围的异常。
我建议您拆分下载的文本并将其添加到列表中
TEXT.AddRange(line.Split('\n'))
此外,随机给你 return 你一个介于 0 和 count 之间的值,否则你永远不会得到第一行