PowerShell 2.0: One Cmdlet at a Time 85 ConvertFrom-StringData
Continuing the series looking at new cmdlets available in PowerShell 2.0. This time we look at the ConvertFrom-StringData cmdlet.
What can I do with it?
Converts a string which contains one or multiple key and valuepairs into a hash table. Input is typically from a here-string since each key and value must be on a separate line.
Example:
Create a here-string and store it in the variable $herestring. Convert it into a hash table.
$herestring = @’ Fruit1 = Orange Fruit2 = Apple ‘@ $herestring | ConvertFrom-StringData
You will notice that the data is now in the form of a hash table
How could I have done this in PowerShell 1.0?
To create a new hash table you could use a new .Net Object of type System.Collections.Hashtable, something like the below
$strings = (‘Fruit1 = Orange’,‘Fruit2 = Apple’) $table = New-Object System.Collections.Hashtable foreach ($string in $strings){ $split = $string.split("=") $part1 = $split[0] $part2 = $split[1] $table.add("$part1","$part2") }