2013-04-26 1 views
0

L'utilisation de la méthode de recherche permet de lire une partie spécifique d'un texte, mais elle échoue.La méthode de recherche échoue à lire le fichier texte C#

J'ai deux classes "allmethods.cs" et "caller.cs"

Il existe deux méthodes dans "allmethods.cs" qui sont "WritingMethod" et "SeekReader"

Le programme devrait écrit dans un fichier texte et lire les données en utilisant la méthode de recherche afin de lire certaines parties dans le fichier texte.

Le programme écrit sans problème dans le fichier texte, mais il ne lit rien lors de l'appel de "SeekReader" qui est la méthode de recherche.

Mon code:

public class allmethods 
{ 
    private static string Name; 
    private static int ID; 
    private static int Age; 
    private static string Email; 
    private static string output; 

    public static void WritingMethod() 
     { 
      int count = 0; 
      while (count < 10)  
      { 
      Console.Write(" Enter your Name: "); 
      Name = Console.ReadLine(); 

      Console.Write(" Enter your ID: "); 
      ID = int.Parse(Console.ReadLine()); 

      Console.Write(" Enter your Age: "); 
      Age = int.Parse(Console.ReadLine()); 

      Console.Write(" Enter your E-mail: "); 
      Email = Console.ReadLine(); 

     StreamWriter Sw = new StreamWriter("fileone.txt", true); 
     string output = string.Format("Thank you for registration! Your Submitted information are:" + Environment.NewLine + "Name: {0}" 
     + Environment.NewLine + "ID: {1}" + Environment.NewLine + "Age: {2}" + Environment.NewLine + "E-mail: {3}", Name, ID, Age, Email); 
     Console.WriteLine(output);  
     Sw.WriteLine(output + Environment.NewLine); 
     Console.ReadLine(); 

     Sw.Close(); 
     count++; 
     } 

    } 

public static void SeekReader() 
    { 
     FileStream FS=new FileStream("fileone.txt",FileMode.Open,FileAccess.Read); 
     StreamReader SR = new StreamReader(FS); 
     SR.BaseStream.Seek(2, SeekOrigin.Begin); 

     FS.Close(); 
     SR.Close(); 
    } 
} 

J'échoué à identifier l'erreur. Aucune suggestion?

Merci à l'avance.

+0

semble similaire à http://stackoverflow.com/questions/16227263/streamreader-doesnt-read-data-in-text-file-c-sharp/16227286? Noredirect = 1 # comment23211047_16227286 – ysrb

Répondre

1

Vous pouvez utiliser File.ReadAllText([FilePah]) pour lire le fichier.

SeekReader de public static void() {

FileStream fsr = new FileStream("fileone.txt", FileMode.Open, FileAccess.Read);  
    StreamReader Sr = new StreamReader(fsr);  
    string line = string.Empty; 
    var ctr = 0; 
    while(ctr < 3){ 
     line = Sr.ReadLine(); 
     ctr++; 
    } 
    Console.WriteLine(line); 

    Sr.Close(); 
    fsr.Close(); 
} 
+0

Oui, mais je veux lire une certaine partie du fichier texte. Merci pour votre réponse. –

+0

Quelle partie du fichier voulez-vous lire? – ysrb

+0

Vous voulez lire la ligne 3 seulement .. –

Questions connexes