Запись в файл -nemerle - PullRequest
0 голосов
/ 26 марта 2019

Я хочу читать текст из файла, построчно, а для каждой строки - записывать его в новый файл.

Я использую следующий код в nemerle:

module Program
{
  Main() : void
  {
 mutable dirInfo= System.IO.DirectoryInfo(@"C:\Users\David Ben Michael\source\repos\nemerle\files");
 def fileNames=dirInfo.GetFiles();

 foreach ( fi in fileNames)
    {    
     mutable fileExt;
     fileExt= System.IO.Path.GetExtension(fi.FullName);                          
      if (fileExt == ".vm" )
      {
          def sr = System.IO.StreamReader(fi.FullName);
        //  def sw =System.IO.StreamWriter(@"C:\Users\David Ben Michael\source\repos\nemerle\files\output.asm");
          mutable line = sr.ReadLine ();

    while (line != null) { 
    System.IO.File.AppendAllText(@"C:\Users\David Ben Michael\source\repos\nemerle\files\output.asm",line);

        //sw.Writeline(line);
     line = sr.ReadLine ();
 }}
      else{}

    } 

}

}

Таким образом: в конце концов я получил копию содержимого файла ".vm" в файле ".asm" без перерыва между строками.Я хочу разделить линии.Поэтому вместо использования инструкции System.IO.File.AppendAllText(@"C:\Users\David Ben Michael\source\repos\nemerle\files\output.asm",line); я использовал следующий код:

  if (fileExt == ".vm" )
      {
          def sr = System.IO.StreamReader(fi.FullName);
          def sw =System.IO.StreamWriter(@"C:\Users\David Ben Michael\source\repos\nemerle\files\output.asm");
          mutable line = sr.ReadLine ();

    while (line != null) { 
    //System.IO.File.AppendAllText(@"C:\Users\David Ben Michael\source\repos\nemerle\files\output.asm",line);

        sw.WriteLine(line);
     line = sr.ReadLine ();

В этом случае компилятор создает пустой файл (!).Почему файл пуст?и как я решил эту проблему?

Спасибо

...