web-dev-qa-db-fra.com

Comment convertir StreamReader en chaîne?

J'ai modifié mon code pour pouvoir ouvrir un fichier en lecture seule. Maintenant, j'ai du mal à utiliser File.WriteAllText car mes FileStream et StreamReader ne sont pas convertis en chaîne.

Voici mon code:

static void Main(string[] args)
{
    string inputPath = @"C:\Documents and Settings\All Users\Application Data\"
                     + @"Microsoft\Windows NT\MSFax\ActivityLog\OutboxLOG.txt";
    string outputPath = @"C:\FAXLOG\OutboxLOG.txt";

    var fs = new FileStream(inputPath, FileMode.Open, FileAccess.Read,
                                      FileShare.ReadWrite | FileShare.Delete);
    string content = new StreamReader(fs, Encoding.Unicode);

    // string content = File.ReadAllText(inputPath, Encoding.Unicode);
    File.WriteAllText(outputPath, content, Encoding.UTF8);
}
18
Jake H.
string content = String.Empty;

using(var sr = new StreamReader(fs, Encoding.Unicode))
{
     content = sr.ReadToEnd();
}

File.WriteAllText(outputPath, content, Encoding.UTF8);
13
keyboardP

Utilisez la méthode StreamReader.ReadToEnd().

4
Sergei B.