且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Dart与系统进程交互

更新时间:2022-09-16 21:31:12

运行命令行

import 'dart:io';

main(List<String> arguments) {
  //当前系统的命令行,例如Windoes命令行Nslookup www.baidu.com
  Process.run('Nslookup', ['www.baidu.com']).then((ProcessResult results) {
    print(results.stdout);
  });
}

先看看控制台的输出

Dart与系统进程交互

再对比一下命令行在CMD的输出

Dart与系统进程交互

可以看到,输出基本是一致的

运行进程

import 'dart:io';

main(List<String> arguments) {
  //运行一个进程,例如打开记事本
  Process.run('notepad', ['']).then((ProcessResult results) {
    print(results.stdout);
  });
}

执行代码,效果如下

Dart与系统进程交互

可以看到,打开了一个空记事本

获取进程的退出代码

import 'dart:io';

main(List<String> arguments) {
  //运行一个进程
  Process.start('Nslookup', ['www.baidu.com']).then((process) {
    //获取进程的退出代码
    process.exitCode.then((exitCode) {
      print('退出代码: $exitCode');
    });
  });
}

控制台输出如下

Dart与系统进程交互