1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import 'dart:io';
- import 'dart_tutorial/addressbook.pb.dart';
- import 'dart_tutorial/addressbook.pbenum.dart';
- /// Iterates though all people in the AddressBook and prints info about them.
- void printAddressBook(AddressBook addressBook) {
- for (var person in addressBook.people) {
- print('Person ID: ${person.id}');
- print(' Name: ${person.name}');
- if (person.hasEmail()) {
- print(' E-mail address:${person.email}');
- }
- for (var phoneNumber in person.phones) {
- switch (phoneNumber.type) {
- case Person_PhoneType.MOBILE:
- print(' Mobile phone #: ');
- break;
- case Person_PhoneType.HOME:
- print(' Home phone #: ');
- break;
- case Person_PhoneType.WORK:
- print(' Work phone #: ');
- break;
- default:
- print(' Unknown phone #: ');
- break;
- }
- print(phoneNumber.number);
- }
- }
- }
- /// Reads the entire address book from a file and prints all
- /// the information inside.
- void main(List<String> arguments) {
- if (arguments.length != 1) {
- print('Usage: list_person ADDRESS_BOOK_FILE');
- exit(-1);
- }
- // Read the existing address book.
- final file = new File(arguments.first);
- final addressBook = new AddressBook.fromBuffer(file.readAsBytesSync());
- printAddressBook(addressBook);
- }
|