C++ の "\n" に相当する Dart はありますか?
次の例では:
for(int j=0;j<readLines.length;j++)
{
outputFile.writeAsStringSync(readLines[j], mode: FileMode.APPEND);
}
「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++;
}
// =====================ここから関連部分が始まります==================
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!');
}