Chromium Code Reviews

Unified Diff: sdk/lib/io/file_impl.dart

Issue 12504006: Make IOSink implement StringSink (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fixed accidental edit Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
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);
})

Powered by Google App Engine