相当于 \n 的 Dart

Che*_*hie 6 newline dart

Dart 是否有相当于 C++ 的“\n”的东西?

在以下示例中:

for(int j=0;j<readLines.length;j++)
{
    outputFile.writeAsStringSync(readLines[j], mode: FileMode.APPEND);
}
Run Code Online (Sandbox Code Playgroud)

我希望将“readLines[j]”中的文本放在单独的行中。这怎么可能做到呢?

例如:

readLines 是一个字符串列表,它包含:“嘿,我的名字是 Cheshie”和“谢谢大家的帮助”。

在上面的代码中,我尝试使用“outputFile”将列表的内容写入文件,我希望将其编写如下:

嘿我的名字是切西

感谢大家尝试提供帮助

也就是说,每个 readLines[j] 都应该写在单独的行中。

谢谢。

代码:

import 'dart:io';

void func (String foldername)
{
  Directory thisFolder = new Directory (foldername);

  List<File> files = thisFolder.listSync(recursive:false);
  int number=1;
  String oldContent='';
  String newContent='';
  String concatenate='';
  String name='';
  int nameStart;
  int nameLength;
  for (int i=0; i<files.length; i++)
  {
    if (files[i].name.endsWith('.in'))
    {
      oldContent=files[i].readAsStringSync(Encoding.UTF_8);
      newContent=number.toString();

      var Strings=[newContent, oldContent];
      concatenate=Strings.join();

      files[i].writeAsStringSync(concatenate);
      number++;
    }   
Run Code Online (Sandbox Code Playgroud)

// =====================这里开始相关部分==================

    nameLength=files[i].name.length;
    nameStart=files[i].name.lastIndexOf('\\', nameLength);
    name=files[i].name.slice(nameStart+1, nameLength);
    if (name.compareTo('hello.in')==0)
    {
      File outputFile=new File('hello.out');
      if (outputFile.existsSync())
      {
        outputFile.deleteSync();
      }
      outputFile.createSync();
      List<String> readLines=files[i].readAsLinesSync(Encoding.UTF_8);
      for(int j=0;j<readLines.length;j++)
      {
        outputFile.writeAsStringSync('$readLines[j]\n', mode: FileMode.APPEND); 
        //outputFile.writeAsStringSync('\n', mode: FileMode.APPEND); 
        //  TODO:   figure out how to get to the next line.

        if (readLines[j].contains('you'))
          print(readLines[j]);
      }
    }
  }
}


void main ()
{
  func('In files');
  print('the end!');
}
Run Code Online (Sandbox Code Playgroud)

Jus*_*yul 8

\n不是 C++ 特定的,您可以在将其写入文件之前将其添加到字符串的末尾。所以,使用类似的东西

outputFile.writeAsStringSync('${readLines[j]}\n', mode: FileMode.APPEND);
Run Code Online (Sandbox Code Playgroud)


小智 5

在当前版本中它有效。

void main() {
  print('word\nsecondword');
}
Run Code Online (Sandbox Code Playgroud)

安慰:

word
secondword
Run Code Online (Sandbox Code Playgroud)