前言:我已將問題簡化爲其關鍵功能,所以如果聽起來很奇怪,那是因爲這是整個程序的一個小方面。創建一個隨機大小的文件[1 ... 500] KB
問題:
我想創造一些像100個的文本文件:我會循環,用我的循環計數器來命名文件。
然後,我想用隨機字符串填充每個文件。我用下面定義的字符串敲擊這個。我想從[1KB到500KB]填充文件。
struct String // And yes I am using my own String library.
{
char *c;
int length;
int maxLength;
}
讓我們假設我打開了文件(可能此刻我創建它,所以它是空的)。現在我會檢查這樣的事情。
int range = Random.Range(0,500);
我會得到一個預先確定文件大小的數字。因此,如果range == 100
那麼該文件將填充100KB的「數據」。
我會先創建我的字符串。
// Maybe making this 100 chars would help?
String *s1 = makeString("abcdefghijklmnopqrstuvwxyz");
我怎麼會想出多少次,我有我的字符串s1
寫入到文件,以使其成爲range
的大小?最好在寫入文件之前,我不想先寫入然後再檢查,然後重新寫入。
而我將如何獲得C中的隨機整數值?我習慣了C#中的Random.Range。
您的意思是preferred-file-size除以字符串長度:'range * 1000/s1-> length;'? – Kninnug
爲了簡化問題,請確保您的字符串的大小爲1024,這是千字節中的字節數。您需要編寫字符串'((範圍* 1024)/ s1->長度'以獲得所需的文件大小。 – naitoon