import kotlin.random.Random
// Generate a random string of given length
fun generateRandomString(length: Int): String {
val charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
return buildString(length) {
repeat(length) {
append(charset[Random.nextInt(charset.length)])
}
}
}
// Generate a random date
fun generateRandomDate(): String {
val year = Random.nextInt(2000, 2021) // 2000–2020
val month = Random.nextInt(1, 13) // 1–12
val day = Random.nextInt(1, 29) // 1–28
return "%04d-%02d-%02d".format(year, month, day)
}
// Generate a random file size
fun generateRandomFileSize(): Int {
return Random.nextInt(1, 100_001) // 1–100000 bytes
}
fun main() {
val extensions = listOf(".txt", ".jpg", ".png", ".cpp", ".pdf")
val numberOfFiles = 10
val fileLength = 9
repeat(numberOfFiles) {
val fileName = generateRandomString(fileLength)
val extension = extensions.random()
val date = generateRandomDate()
val fileSize = generateRandomFileSize()
println("$fileName$extension $date $fileSize bytes")
}
}
/*
run:
8OwQIB1OA.png 2009-11-03 22081 bytes
NGnQeg0W4.png 2017-01-18 30807 bytes
r79DV3gyk.pdf 2014-01-02 81783 bytes
JSYubC0q4.jpg 2001-02-19 91443 bytes
WLxWsbTFU.pdf 2019-09-16 74495 bytes
SQzti0Xlo.cpp 2002-01-04 83266 bytes
njpM3HaeS.jpg 2013-06-17 6149 bytes
8ekNZDyjK.png 2014-01-13 32864 bytes
Fi8G3YquR.png 2016-12-13 55878 bytes
u74eqvUtb.txt 2004-11-15 63307 bytes
*/