Index: sdk/lib/io/file_impl.dart |
diff --git a/sdk/lib/io/file_impl.dart b/sdk/lib/io/file_impl.dart |
index 0ba765cfb34a485ed91e21f7f778ea3d7f63dc95..4802a7cfd18dccb0f7d6fb9ab607311fa9e2ba72 100644 |
--- a/sdk/lib/io/file_impl.dart |
+++ b/sdk/lib/io/file_impl.dart |
@@ -468,14 +468,15 @@ class _File extends _FileBase implements File { |
return new _FileStream(_path); |
} |
- IOSink<File> openWrite([FileMode mode = FileMode.WRITE]) { |
+ IOSink<File> openWrite({FileMode mode: FileMode.WRITE, |
+ Encoding encoding: Encoding.UTF_8}) { |
if (mode != FileMode.WRITE && |
mode != FileMode.APPEND) { |
throw new FileIOException( |
"Wrong FileMode. Use FileMode.WRITE or FileMode.APPEND"); |
} |
var consumer = new _FileStreamConsumer(this, mode); |
- return new IOSink<File>(consumer); |
+ return new IOSink<File>(consumer, encoding: encoding); |
} |
Future<List<int>> readAsBytes() { |
@@ -549,10 +550,10 @@ class _File extends _FileBase implements File { |
[FileMode mode = FileMode.WRITE]) { |
Completer<File> completer = new Completer<File>(); |
try { |
- var stream = openWrite(mode); |
- stream.add(bytes); |
- stream.close(); |
- stream.done |
+ var sink = openWrite(mode: mode); |
+ sink.writeBytes(bytes); |
+ sink.close(); |
+ sink.done |
Anders Johnsen
2013/03/07 16:53:49
Maybe do:
- 'return sink.done ...' here
- Remove
Søren Gjesse
2013/03/08 09:47:46
Thanks, that is mich nicer. Had to do
return si
|
.then((_) { |
completer.complete(this); |
}) |