我想在几秒钟内创建一个巨大的虚拟文件,说1~2 GB.这是我用C#写的:
file.writeallbytes("filename",new byte[a huge number]);
Run Code Online (Sandbox Code Playgroud)
另一种表明状态的方式如下:
long FSS = din.TotalFreeSpace;
long segments = FSS / 10000;
long last_seg = FSS % 10000;
BinaryWriter br = new BinaryWriter(fs);
for (long i = 0; i < segments; i++)
{
br.Write(new byte[10000]);
this.label2.Text = "segments write :" + i.ToString() + "\r\n" + "segments remain :" + ((segments-i)+1).ToString();
Application.DoEvents();
}
br.Write(new byte[last_seg]);
this.label2.Text += "\r\nDone!";
br.Close();
Run Code Online (Sandbox Code Playgroud)
其中din是磁盘信息对象
使用这两种方法,需要2分钟或更长时间才能编写如此大的虚拟文件.有没有其他更快的方法呢?
问候.