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.
Static Properties
- Map<String,String> environment
-
read-onlyGet the environment for this process.
- String executable
-
read-onlyReturns the path of the executable used to run the script in this isolate.
- List<String> executableArguments
-
read-onlyReturns the flags passed to the executable used to run the script in this isolate. These are the command-line flags between the executable name and the script name. Each fetch of executableArguments returns a new List, containing the flags passed to the executable.
- bool isAndroid
-
read-onlyReturns true if the operating system is Android.
- bool isLinux
-
read-onlyReturns true if the operating system is Linux.
- bool isMacOS
-
read-onlyReturns true if the operating system is OS X.
- bool isWindows
-
read-onlyReturns true if the operating system is Windows.
- String localHostname
-
read-onlyGet the local hostname for the system.
- int numberOfProcessors
-
read-onlyGet the number of processors of the machine.
- String operatingSystem
-
read-onlyGet a string (
linux
,macos
,windows
orandroid
) representing the operating system. - String packageRoot
-
read-onlyReturns the value of the --package-root flag passed to the executable used to run the script in this isolate. This is the directory in which Dart packages are looked up.
- String pathSeparator
-
read-onlyGet the path separator used by the operating system to separate components in file paths.
- String resolvedExecutable
-
read-onlyReturns the path of the executable used to run the script in this isolate after it has been resolved by the OS.
- Uri script
-
read-onlyReturns the absolute URI of the script being run in this isolate.
- String version
-
read-onlyReturns the version of the current Dart runtime.
Constructors
- Platform()