Platform class

Information about the environment in which the current program is running.

Information about the environment in which the current program is running.

Platform provides information such as the operating system, the hostname of the computer, the value of environment variables, the path to the running program, and so on.

Get the URI to the current Dart script

Use the script getter to get the URI to the currently running Dart script.

import 'dart:io' show Platform;

void main() {
  // Get the URI of the script being run.
  var uri = Platform.script;
  // Convert the URI to a path.
  var path = uri.toFilePath();
}

Get the value of an environment variable

The environment getter returns a the names and values of environment variables in a Map that contains key-value pairs of strings. The Map is unmodifiable. This sample shows how to get the value of the PATH environment variable.

import 'dart:io' show Platform;

void main() {
  Map<String, String> envVars = Platform.environment;
  print(envVars['PATH']);
}

Determine the OS

You can get the name of the operating system as a string with the operatingSystem getter. You can also use one of the static boolean getters: isMacOS, isLinux, and isWindows.

import 'dart:io' show Platform, stdout;

void main() {
  // Get the operating system as a string.
  String os = Platform.operatingSystem;
  // Or, use a predicate getter.
  if (Platform.isMacOS) {
    Print('is a Mac');
  } else {
   print('is not a Mac');
  }
}

Other resources

Dart by Example provides additional task-oriented code samples that show how to use various API from the dart:io library.

Constructors

Platform()

Static Properties

isLinux bool
read-only
Returns true if the operating system is Linux.
isMacOS bool
read-only
Returns true if the operating system is OS X.
isWindows bool
read-only
Returns true if the operating system is Windows.
isAndroid bool
read-only
Returns true if the operating system is Android.
numberOfProcessors int
read-only
pathSeparator String
read-only
operatingSystem String
read-only
localHostname String
read-only
environment Map<String,String>
read-only
executable String
read-only
resolvedExecutable String
read-only
script Uri
read-only
executableArguments List<String>
read-only
packageRoot String
read-only
version String
read-only