使用未排序整数的随机列表创建文本文件



下面是我尝试的一种随机生成整数的方法,但有时它给我的整数比我想要的要少,或者它甚至不会将它们写入文件。

//generates random integers and moves it into respective file
static void Randomgen(int Size)         
{
StreamWriter SW = new StreamWriter("Test.txt");     // respective file
Random random = new Random();  

for (int i = 0; i < Size; i++)
{
SW.WriteLine(random.Next(0, int.MaxValue));
}
}     

然后我使用将其调用到主

Randomgen(100);
Console.ReadLine();

所以这都是一个更大项目的一部分。我必须对这些整数进行排序,并在不同的文件大小上测试不同的排序及其效率。我只是不知道为什么有时它能起作用,有时它不起作用,当它起作用时,它生成的内容与我输入Randomgen方法的内容相去甚远。请有人解释为什么会发生这种情况。此外,当我尝试使用较小大小(如10(的方法时,它只会创建一个没有整数列表的空白文本文件。

。网络流是缓冲的,所以您需要在写入后刷新流,所以要么在末尾显式调用SW.Flush(),要么更正确地说,通过使用语句声明流来处理流:

static void Randomgen(int Size) {
using (var SW = new StreamWriter("Test.txt")) { // using
var random = new Random();                   
for (int i = 0; i < Size; i++) {
SW.WriteLine(random.Next(0, int.MaxValue));
}
}
}

C#8.0+using语法:

static void Randomgen(int Size) {
using var SW = new StreamWriter("Test.txt"); // using
var random = new Random();                   
for (int i = 0; i < Size; i++) {
SW.WriteLine(random.Next(0, int.MaxValue));
}
} 

相关内容

  • 没有找到相关文章

最新更新