J'ai besoin de tester certains problèmes de charge en ce qui concerne la taille du fichier. J'ai une application Windows écrite en C # qui générera automatiquement les fichiers. Je connais la taille de chaque fichier, ex. 100 Ko et le nombre de fichiers à générer. Ce dont j'ai besoin d'aide, c'est comment générer une chaîne inférieure ou égale à la taille de fichier requise.
pseudo code:
long fileSizeInKB = (1024 * 100); //100KB
int numberOfFiles = 5;
for(var i = 0; i < numberOfFiles - 1; i++) {
var dataSize = fileSizeInKB;
var buffer = new byte[dataSize];
using (var fs = new FileStream(File, FileMode.Create, FileAccess.Write)) {
}
}
c#
string
.net
operations
VajNyiaj
la source
la source
Réponses:
Vous pouvez toujours utiliser le constructeur a pour une chaîne qui prend un
char
et un certain nombre de fois que vous voulez que ce caractère soit répété:Cela vous donne une chaîne de 5000 étoiles - ajustez vos besoins.
la source
Le moyen le plus simple serait de suivre le code:
Vous avez maintenant une chaîne avec autant de A que nécessaire.
Pour le remplir avec Lorem Ipsum ou une autre chaîne répétitive, construisez quelque chose comme le pseudocode suivant:
Edit: Si vous enregistrez en Unicode, vous devrez peut-être réduire de moitié le nombre de taille de fichier car Unicode utilise deux octets par caractère si je me souviens bien.
la source
Il y a tellement de variations sur la façon dont vous pouvez faire cela. La première serait de remplir le fichier avec un tas de caractères. Vous avez besoin de 100 Ko? Pas de problème .. 100 * 1024 * 8 = 819200 bits. Un seul caractère est de 16 bits. 819200/16 = 51200. Vous devez insérer 51 200 caractères dans un fichier. Mais considérez qu'un fichier peut avoir des en-têtes / métadonnées supplémentaires, vous devrez donc peut-être en tenir compte et réduire le nombre de caractères à écrire dans le fichier.
la source
En réponse partielle à votre question, j'ai récemment créé une application WPF portable qui crée facilement des fichiers `` indésirables '' de presque toutes les tailles: https://github.com/webmooch/FileCreator
la source