2011-06-02 6 views
5

Bloc de notas:obtener el valor del bloc de notas y ponerlo dentro de la cadena C#?

Hello world! 

¿Cómo voy a poner en C# y la convierten en cadena ..?

Hasta ahora, estoy obteniendo la ruta del bloc de notas.

string notepad = @"c:\oasis\B1.text"; //this must be Hello world 

favor consejo yo .. No estoy familiarizado en este .. TNX

+2

¿Estás preguntando cómo leer un archivo creado en el bloc de notas? – n8wrl

Respuesta

7

Usted puede leer el texto utilizando la File.ReadAllText() método:

public static void Main() 
    { 
     string path = @"c:\oasis\B1.txt"; 

     try { 

      // Open the file to read from. 
      string readText = System.IO.File.ReadAllText(path); 
      Console.WriteLine(readText); 

     } 
     catch (System.IO.FileNotFoundException fnfe) { 
      // Handle file not found. 
     } 

    } 
+0

Esto no es correcto, tiene una condición de carrera entre su llamada a File.Exists y realmente está leyendo el archivo. Si el archivo se elimina en ese período, su solución se bloqueará. –

+0

@Greg D, eso es un poco quisquilloso, ¿no crees? ¿Hay algo en esta pregunta que te haga pensar que el código debe ser a prueba de balas? –

+0

@Greg D, pensándolo bien, me encontré con [su respuesta aquí] (http://stackoverflow.com/questions/4509415/check-whether-a-folder-exists-in-a-path-in-c/ 4509517 # 4509517) y así mucho. ¡Gracias! He actualizado mi respuesta. (Todavía estoy en desacuerdo con la votación negativa :) –

5

hacer uso de StreamReader y leer el archivo como se muestra a continuación

string notepad = @"c:\oasis\B1.text"; 
StringBuilder sb = new StringBuilder(); 
using (StreamReader sr = new StreamReader(notepad)) 
      { 
       while (sr.Peek() >= 0) 
       { 
        sb.Append(sr.ReadLine()); 
       } 
      } 

string s = sb.ToString(); 
6

que necesita para leer el contenido del archivo, por ejemplo:

using (var reader = new StreamReader(new FileStream(path, FileMode.Open, FileAccess.Read)) 
{ 
    return reader.ReadToEnd(); 
} 

O, lo más simple posible:

return File.ReadAllText(path); 
3

Reading From a Text File (Visual C#), en este ejemplo @ no se utiliza cuando se está llamando StreamReader, sin embargo, cuando se escribe el código en Visual Studio dará el siguiente error por cada \

secuencia de escape no reconocido

Para escapar de este error puede escribir @ antes " que se encuentra al principio de la cadena de ruta. También debería mencionar que no da este error si usamos \\ incluso si no escribimos @.

// Read the file as one string. 
System.IO.StreamReader myFile = new System.IO.StreamReader(@"c:\oasis\B1.text"); 
string myString = myFile.ReadToEnd(); 

myFile.Close(); 

// Display the file contents. 
Console.WriteLine(myString); 
// Suspend the screen. 
Console.ReadLine(); 
3

cheque este ejemplo:

// Read the file as one string. 
System.IO.StreamReader myFile = 
    new System.IO.StreamReader("c:\\test.txt"); 
string myString = myFile.ReadToEnd(); 

myFile.Close(); 

// Display the file contents. 
Console.WriteLine(myString); 
// Suspend the screen. 
Console.ReadLine(); 
Cuestiones relacionadas