Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1489 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [.NET] StreamReader, position dans un fichier, fonction peek et seek

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[.NET] StreamReader, position dans un fichier, fonction peek et seek

n°1454511
Clarkent
Musclor le shérif de l'espace
Posté le 09-10-2006 à 17:47:22  profilanswer
 

Hello,
 
J'ai un pb avec le StreamReader, je dois lire defois de suite un Stream, je le list une première fois et j'attends dans une boucle while qu'il se temine, j'utilise la fonction Peek() du StreamReader qui me retourne -1 si on est a la fin du stream.

Code :
  1. StreamReader str = new StreamReader(monStream);
  2. while str.Peek()>0
  3.        str.readLine();


 
Jusque la tout roule, mais par la suite je suis incapable de revenir au debut du fichier.
 
que je fasse:

Code :
  1. str.close()
  2. str =  new StreamReader(monStream);


 

Code :
  1. str.Peek() me retourne toujours -1


 
Si je fais un truc du genre
 

Code :
  1. str.baseStream.Position = 0


 
str.Peek me retourne toujours -1, par contre si je fais un str.readline il me retourne la premiere ligne ...
 
str.BaseStream.Seek(0, System.IO.SeekOrigin.Begin) me dit que les arguments sont mauvais :/.
 
Je ne comprends plus :(, il n'est donc pas possible de revenir au debutd'un flux ou plutot que la méthode Peek() me retourne autre chose que -1 en ayant pourtant changer de placer dans le fichier.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
mood
Publicité
Posté le 09-10-2006 à 17:47:22  profilanswer
 

n°1455691
_Mose_
Lonesome coder
Posté le 11-10-2006 à 17:43:03  profilanswer
 

Clarkent a écrit :

str.BaseStream.Seek(0, System.IO.SeekOrigin.Begin) me dit que les arguments sont mauvais :/.

C'est pourtant la bonne façon de procéder.
Tu peux poster l'intégralité de la call stack de l'exception stp ?
 
Sinon, t'as essayé de faire ça directement sur le stream dont tu te sers pour créer ton streamReader ? plutôt que de passer par StreamReader.BaseStream ?

n°1456459
Clarkent
Musclor le shérif de l'espace
Posté le 13-10-2006 à 01:39:49  profilanswer
 

_Mose_ a écrit :

C'est pourtant la bonne façon de procéder.
Tu peux poster l'intégralité de la call stack de l'exception stp ?
 
Sinon, t'as essayé de faire ça directement sur le stream dont tu te sers pour créer ton streamReader ? plutôt que de passer par StreamReader.BaseStream ?


c'est lors de la compile que ca me dit que les arguments sont faux, mais c'est passé dans une autre classe :/, je devais pas m'y prendre correctement.
 
concernant le stream d'origine je ne crois pas qu'il ait une méthode seek, vu que c'est le streamreader qui pointe sur le stream et le stream bein n'ait qu'un stream, enfin je ne sais pas, mais je crois avoir regardé, enfin merci ;).


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [.NET] StreamReader, position dans un fichier, fonction peek et seek

 

Sujets relatifs
[Résolu] [C#] Création puis ouverture d'un fichier => problèmeRécuperer la taille d'un fichier qui se trouve sur un serveur ftp
Notice: Undefined offset d'une fonction dans une classeComment créer un fichier avs (avisynth) avec vb?
integrer une redirection web dans un fichier videohelp sur une fonction
supprimer chaine de caractere dans un nom de fichierLien fichier CSS
[C#] StreamReader, XML, et jeton inattendu, kesak ?Prise de tete grave pour insérer un fichier Audio
Plus de sujets relatifs à : [.NET] StreamReader, position dans un fichier, fonction peek et seek


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR