我有以下功能:
//Function to get random number
public static int RandomNumber(int min, int max)
{
Random random = new Random();
return random.Next(min, max);
}
Run Code Online (Sandbox Code Playgroud)
我怎么称呼它:
byte[] mac = new byte[6];
for (int x = 0; x < 6; ++x)
mac[x] = (byte)(Misc.RandomNumber((int)0xFFFF, (int)0xFFFFFF) % 256);
Run Code Online (Sandbox Code Playgroud)
如果我在运行时使用调试器执行该循环,则会得到不同的值(这就是我想要的).但是,如果我在该代码下面放置一个断点两行,则"mac"数组的所有成员都具有相同的值.
为什么会这样?
我有一个超过3000行的文本文件.我找到了使用的行数
string[] lines = File.ReadAllLines(myPath);
var lineCount = lines.Length;
Run Code Online (Sandbox Code Playgroud)
然后我生成一个随机数
Random rand = new Random();
var lineToRead = rand.Next(1, lineCount);
Run Code Online (Sandbox Code Playgroud)
现在我需要读取由随机数生成的特定行.我可以这样做
string requiredLine = lines[lineToRead];
Run Code Online (Sandbox Code Playgroud)
因为我的文件很大,我不认为创建如此大的数组是有效的.是否有更有效或更简单的方法来做到这一点?
我有一个5000多行的文件.我想找到每次运行程序时选择其中一行的最有效方法.我原本打算用随机方法选择一个(之前我知道有5000行).认为可能效率低下,所以我想我会看第一行,然后从顶部删除它并将其附加到底部.但似乎我必须读取整个文件并创建一个要从顶部删除的新文件.
什么是最有效的方法:随机方法或新文件方法?
该程序将每5分钟运行一次,我使用的是c#4.5
谁能告诉我如何从txt文件中读取随机行?我想从txt文件中读取随机行,并在textBox中仅显示该行.代码示例会很棒!Thanx in foward