Je veux créer beaucoup (1 million) de petits fichiers aussi rapidement que possible, c'est ce que je fais maintenant:La meilleure façon de créer beaucoup de petits fichiers?
for(long i = 0; i < veryVeryLong; i++){
using (var fs = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.None, 4096, FileOptions.None)) {
byte[] bytes = GetFileContent(i); // no matter
fs.Write(bytes, 0, bytes.Length);
}
}
Puis-je accélérer?
MISE À JOUR
droit roomaroo, je dois utiliser en parallèle, mais je l'ai combiné avec ma fonction et cela a un bien meilleur résultat. Code:
Parallel.For(0, veryVeryLogn, (i) => {
using (var fs = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.None, 4096, FileOptions.None)) {
byte[] bytes = GetFileContent(i); // no matter
fs.Write(bytes, 0, bytes.Length);
}
});
Vous pourriez quelque chose en parallèle. – ChrisBint
pas sûr si peut vous aider .. mais il y a une ligne de commande utils pour créer des fichiers .. "fichier fsutil createnew" – 2GDev
Depuis que vous utilisez C#, vous voudrez peut-être regarder cette question: http://stackoverflow.com/questions/8979686/le plus rapide-pour-créer-des-fichiers-en-c-sharp? rq = 1 –