Files
sdk/tests/standalone/io/process_std_io_script2.dart
T
sgjesse@google.com 0cd11fcdc3 Remove Encoding.BINARY
THe Encoding.BINARY was a bad idea. It is now removed and null is used to indicate binary result from Process.run.

R=ajohnsen@google.com
BUG=

Review URL: https://codereview.chromium.org//16959004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23977 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-13 13:06:11 +00:00

47 lines
1.3 KiB
Dart

// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
//
// Utility script to echo strings in various formats to stdout or
// stderr.
import "dart:io";
writeData(data, encoding, stream) {
if (stream == "stdout") {
if (encoding == null) {
stdout.add(data);
} else {
stdout.encoding = encoding;
stdout.write(data);
}
} else if (stream == "stderr") {
if (encoding == null) {
stderr.add(data);
} else {
stderr.encoding = encoding;
stderr.write(data);
}
}
}
main() {
var asciiString = 'abc';
var latin1String = 'æøå';
var utf8String = new String.fromCharCodes([955]);
var binary = [0, 1, 2];
var options = new Options();
if (options.arguments.length > 1) {
var stream = options.arguments[1];
if (options.arguments[0] == "ascii") {
writeData(asciiString, Encoding.ASCII, stream);
} else if (options.arguments[0] == "latin1") {
writeData(latin1String, Encoding.ISO_8859_1, stream);
} else if (options.arguments[0] == "utf8") {
writeData(utf8String, Encoding.UTF_8, stream);
} else if (options.arguments[0] == "binary") {
writeData(binary, null, stream);
}
}
}