public void ProcessPlaylist(string caminho, Mp3FileInfo dados) { var myDirectory = new DirectoryInfo(caminho); FileInfo[] myFiles = myDirectory.GetFiles(dados.Extensao); bool mover = false; foreach (var oriFile in myFiles) { mover = false; //using (var input = File.OpenText(oriFile.FullName, Encoding.UTF7)) using (var input = new StreamReader(oriFile.FullName, Encoding.UTF7)) using (var output = new StreamWriter(FS.PathCombine(caminho, "output.txt"), false, Encoding.GetEncoding(28591))) { string line; while (null != (line = input.ReadLine())) { if (!line.Contains(dados.Caminho.Substring(2))) { continue; } this.Process(ref line, dados, ref mover); output.WriteLine(line); } } if (mover) { FS.DeleteFile(oriFile.FullName); FS.MoveFile(FS.PathCombine(caminho, "output.txt"), oriFile.FullName); } //string str = File.ReadAllText(oriFile.FullName); //str = str.Replace("some text", "some other text"); //File.WriteAllText(oriFile.FullName, str); } }