description

# Platform class abstract final

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 other global properties of the program being run.

## Get the URI of 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, isWindows, etc.

    import 'dart:io' show Platform;

    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');
      }
    }

## Properties

hashCode → int
  The hash code for this object.
  no setterinherited
runtimeType → Type
  A representation of the runtime type of the object.
  no setterinherited

## Methods

noSuchMethod(Invocation invocation) → dynamic
  Invoked when a nonexistent method or property is accessed.
  inherited
toString() → String
  A string representation of this object.
  inherited

## Operators

operator ==(Object other) → bool
  The equality operator.
  inherited

## Static Properties

environment → Map<String, String>
  The environment for this process as a map from string key to string value.
  no setter
executable → String
  The path of the executable used to run the script in this isolate. Usually `dart` when running on the Dart VM or the compiled script name (`script_name.exe`).
  no setter
executableArguments → List<String>
  The flags passed to the executable used to run the script in this isolate.
  no setter
isAndroid → bool
  Whether the operating system is a version of Android.
  final
isFuchsia → bool
  Whether the operating system is a version of Fuchsia.
  final
isIOS → bool
  Whether the operating system is a version of iOS.
  final
isLinux → bool
  Whether the operating system is a version of Linux.
  final
isMacOS → bool
  Whether the operating system is a version of macOS.
  final
isWindows ↔ bool
  Whether the operating system is a version of Microsoft Windows.
  getter/setter pair
lineTerminator → String
  The current operating system's default line terminator.
  no setter
localeName → String
  Get the name of the current locale.
  no setter
localHostname → String
  The local hostname for the system.
  final
numberOfProcessors → int
  The number of individual execution units of the machine.
  final
operatingSystem → String
  A string representing the operating system or platform.
  final
operatingSystemVersion → String
  A string representing the version of the operating system or platform.
  final
packageConfig → String?
  The `--packages` flag passed to the executable used to run the script in this isolate.
  no setter
pathSeparator → String
  The path separator used by the operating system to separate components in file paths.
  final
resolvedExecutable → String
  The path of the executable used to run the script in this isolate after it has been resolved by the OS.
  no setter
script → Uri
  The absolute URI of the script being run in this isolate.
  no setter
version → String
  The version of the current Dart runtime.
  final