Bonjour,
à l'heure actuelle, je travaille sur des fichiers séquentiels de grande taille et je voudrais savoir quelles sont les limites pour l'utilisation de la méthode ReadToEnd() que ce soit niveau limite mémoire, rapidité, ect.
Merci beaucoup
Bonjour,
à l'heure actuelle, je travaille sur des fichiers séquentiels de grande taille et je voudrais savoir quelles sont les limites pour l'utilisation de la méthode ReadToEnd() que ce soit niveau limite mémoire, rapidité, ect.
Merci beaucoup
ReadToEnd va lire le fichier entier en mémoire
Donc si le fichier fait 1 Go, ça va occuper 1Go de RAM au moins (voire plus selon le codage de ton fichier, vu que les strings .NET sont en Unicode)
A part la RAM, je ne vois pas d'autre limitation à la méthode ReadToEnd...
Ah si : il faut que ce soit un fichier texte, évidemment...
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
A voir si dans le l'implémentation de la classe il utilisent des 'int' ou des 'long' comme indices de leurs buffers... Dans le premier cas la limite serait donc Int32.MaxValue (désolé j'ai pas le chiffre exact en tête )
Pourquoi passer par ReadToEnd() ? Si tu travailles avec des fichiers séquentiels, un traitement séquentiel serait normalement plus à propos, surtout si les fichiers sont volumineux (lecture ligne à ligne sans tout charger).
Pas de questions techniques par MP
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager