using System;
using System.Collections.Generic;
using System.Security.Cryptography;
using System.Text;
class RandomFiles
{
// Function to generate a random string of given length
static string GenerateRandomString(int length) {
const string charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
var bytes = new byte[length];
RandomNumberGenerator.Fill(bytes);
var sb = new StringBuilder(length);
foreach (byte b in bytes)
sb.Append(charset[b % charset.Length]);
return sb.ToString();
}
// Function to generate a random date
static string GenerateRandomDate() {
int year = RandomNumberGenerator.GetInt32(2000, 2021); // 2000–2020
int month = RandomNumberGenerator.GetInt32(1, 13); // 1–12
int day = RandomNumberGenerator.GetInt32(1, 29); // 1–28
return $"{year:0000}-{month:00}-{day:00}";
}
// Function to generate a random file size
static int GenerateRandomFileSize() {
return RandomNumberGenerator.GetInt32(1, 100001); // 1–100000 bytes
}
static void Main()
{
var extensions = new List<string> { ".txt", ".jpg", ".png", ".cpp", ".pdf" };
int numberOfFiles = 10;
int fileLength = 9;
for (int i = 0; i < numberOfFiles; i++)
{
string fileName = GenerateRandomString(fileLength);
string extension = extensions[RandomNumberGenerator.GetInt32(extensions.Count)];
string date = GenerateRandomDate();
int fileSize = GenerateRandomFileSize();
Console.WriteLine($"{fileName}{extension} {date} {fileSize} bytes");
}
}
}
/*
run:
oz8tMiA8m.cpp 2011-11-28 42022 bytes
hYDtnqmqd.txt 2013-02-07 17553 bytes
deUsovuqT.cpp 2012-05-06 33347 bytes
EPrF7lY10.cpp 2009-10-22 57643 bytes
bBQklRNgx.jpg 2008-08-27 60546 bytes
jfaDtpCu6.jpg 2004-09-07 16648 bytes
C06fKesUT.jpg 2020-04-08 83568 bytes
Ajt5xxglR.txt 2016-10-28 67010 bytes
9zo5AZTyT.cpp 2001-02-17 38595 bytes
lPaRR6vdN.png 2016-01-21 92418 bytes
*/