Je veux conserver un fichier journal et j'utilise TextWriter / Streamwriter pour écrire des messages à mon fichier journal. J'appelle textwriter.flush () après avoir écrit le message, mon message ne s'affiche toujours pas tout de suite. Il ne se présente que lorsque j'appelle proche, et je préférerais ne pas rouvrir et fermer le fichier tout le temps simplement pour voir les messages immédiatement. P>
3 Réponses :
Vous voudrez peut-être essayer de construire un filtream vous-même passez dans le fichierOPTIONS.WriteThreThrough au constructeur. Construisez ensuite votre streamwriter avec ce filtream. L'option WriteThrough contourne le cache. P>
Cette méthode était la seule qui a fonctionné à 100% du temps, merci.
Assurez-vous d'ouvrir votre fichier journal avec l'accès en lecture-actions, permettant toutes les ouvertures suivantes du fichier de lecture, mais en refusant l'accès à l'écriture. De cette façon, vous pourrez surveiller le journal d'un autre programme. P>
Vous pouvez également définir le du Documentation MSDN sur Autoflush: P>
Obtient ou définit une valeur indiquant
si le streamwriter va rincer
sa mémoire tampon au flux sous-jacent
Après chaque appel à
Streamwriter..write. P>
blockQuote>
marc p> StreamWriter.Autoflush code> de la propriété sur true. Avec cela, tout ce qui est écrit sur le streamwriter sera écrit sur le disque immédiatement (après chaque appel à
écrire code>). P>