ConvertFrom-StringData - PowerShell command help and examples

Converts a string containing one or more key/value pairs to a hash table. (ConvertFrom-StringData)


NAME
ConvertFrom-StringData
SYNOPSIS
Converts a string containing one or more key/value pairs to a hash table.
SYNTAX
ConvertFrom-StringData [-StringData] <string> [<CommonParameters>]
DESCRIPTION
The ConvertFrom-StringData cmdlet converts a string that contains one or more key/value pairs into a hash table. Because each key/value pair must be on a separate line, here-strings are often used as the input format. The ConvertFrom-StringData cmdlet is considered to be a safe cmdlet that can be used in the DATA section of a script or function. When used in a DATA section, the contents of the string must conform to the rules for a DATA section. For more information, see about_Data_Sections.
PARAMETERS
-StringData <string> Specifies the string to be converted. You can use this parameter or pipe a string to ConvertFrom-StringData. The parameter name is optional. The value of this parameter must be a string that is enclosed in single quotation marks (a single-quoted string) or a string that is enclosed in double quotation marks (a double-quoted string) or a here-string containing one or more key/value pairs. Each key/value pair must be on a separate line, or each pair must be separated by newline characters (`n). You can include comments in the string, but the comments cannot be on the same line as a key/value pair. The comments are not included in the hash table. A here-string is a string consisting of one or more lines within which quotation marks are interpreted literally. For more information, see about_Quoting_Rules. Required? true Position? 1 Default value Accept pipeline input? true (ByValue) Accept wildcard characters? false <CommonParameters> This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer and OutVariable. For more information, type, "get-help about_commonparameters".
INPUTS
System.String You can pipe a string containing a key/value pair to ConvertFrom-StringData.
OUTPUTS
System.Collections.Hashtable ConvertFrom-StringData returns a hash table that it creates from the key/value pairs.
NOTES
A here-string is a string consisting of one or more lines within which quotation marks are interpreted literally. For more information, see about_Quoting_Rules. ConvertFrom-StringData can be useful in scripts that display user messages in multiple spoken languages. You can use the dictionary-style hash tables to isolate text strings from code, such as in resource files, and to format the text strings for use in translation tools.

Examples

EXAMPLE 1
C:\PS>$here = @' Msg1 = The string parameter is required. Msg2 = Credentials are required for this command. Msg3 = The specified variable does not exist. '@ C:\PS> convertfrom-stringdata -stringdata $here Name Value ---- ----- Msg3 The specified variable does not exist. Msg2 Credentials are required for this command. Msg1 The string parameter is required.
Description
----------- These commands convert a single-quoted here-string of user messages into a hash table. In a single-quoted string, values are not substituted for variables and expressions are not evaluated. The first command creates a here-string and saves it in the $here variable. The second command uses the ConvertFrom-StringData cmdlet to convert the here-string in the $here variable to a hash table.
EXAMPLE 2
C:\PS>$p = @" ISE = Windows PowerShell Integrated Scripting Environment "@ C:\PS> $p | get-member TypeName: System.String Name MemberType Definition ---- ---------- ---------- Clone Method System.Object Clone() ... C:\PS> $hash = convertfrom-stringdata -stringdata $p C:\PS> $hash | get-member TypeName: System.Collections.Hashtable Name MemberType Definition ---- ---------- ---------- Add Method System.Void Add(Object key, Object ...
Description
----------- These commands demonstrate that ConvertFrom-StringData actually converts a here-string to a hash table. The first command creates a double-quoted here-string that includes one key/value" pair and saves it in the $p variable. The second command uses a pipeline operator (|) to send the $p variable to the Get-Member cmdlet. The result shows that $p is a string (System.String). The third command uses the ConvertFrom-StringData cmdlet to convert the here-string in $p to a hash table. The command stores the result in the $hash variable. The final command uses a pipeline operator (|) to send the $hash variable to the Get-Member cmdlet. The result shows that the content of the $hash variable is a hash table (System.Collections.Hashtable).
EXAMPLE 3
C:\PS>convertfrom-stringdata -stringdata @' Name = Disks.ps1 # Category is optional. Category = Storage Cost = Free '@ Name Value ---- ----- Cost Free Category Storage Name Disks.ps1
Description
----------- This command converts a single-quoted here-string that contains multiple key/value pairs into a hash table. In this command, the value of the StringData parameter is a here-string, instead of a variable that contains a here-string. Either format is valid. The here-string includes a comment about one of the strings. Comments are valid in strings, provided that the comment is on a different line than a key/value pair.
EXAMPLE 4
C:\PS>$a = convertfrom-stringdata -stringdata "Top = Red `n Bottom = Blue" C:\PS> "Top = " + $a.Top Top = Red C:\PS> "Bottom = " + $a.Bottom Bottom = Blue
Description
----------- This example converts a regular double-quoted string (not a here-string) into a hash table and saves it in the $a variable. To satisfy the condition that each key/value pair must be on a separate line, it uses the Windows PowerShell newline character (`n) to separate the pairs. The result is a hash table of the input. The remaining commands display the output.
EXAMPLE 5
C:\PS>$TextMsgs = DATA { ConvertFrom-StringData @' Text001 = The $Notebook variable contains the name of the user's system notebook. Text002 = The $MyNotebook variable contains the name of the user's private notebook. '@ } C:\PS> $TextMsgs.Text001 The $Notebook variable contains the name of the user's system notebook. C:\PS> $TextMsgs.Text002 The $MyNotebook variable contains the name of the user's private notebook.
Description
----------- This example shows a ConvertFrom-StringData command used in the DATA section of a script. The statements below the DATA section display the text to the user. Because the text includes variable names, it must be enclosed in a single-quoted string so that the variables are interpreted literally and not expanded. Variables are not permitted in the DATA section.
EXAMPLE 6
C:\PS>$here = @' Msg1 = The string parameter is required. Msg2 = Credentials are required for this command. Msg3 = The specified variable does not exist. '@ C:\PS> $hash = $here | convertfrom-stringdata C:\PS> $hash Name Value ---- ----- Msg3 The specified variable does not exist. Msg2 Credentials are required for this command. Msg1 The string parameter is required.
Description
----------- This example shows that you can use a pipeline operator (|) to send a string to ConvertFrom-StringData. The first command saves a here-string in the $here variable. The second command uses a pipeline operator (|) to send the $here variable to ConvertFrom-StringData. The command saves the result in the $hash variable. The final command displays the contents of the $hash variable. RELATED LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=113288 about_Data_Sections about_Quoting_Rules about_Script_Internationalization C:\Windows>powershell get-help Export-CSV -full

Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.

ColorConsole [Version 3.7.1000] PowerShell 2.0-Export

Windows 11, 10, 8.1, 8, 7 / Server 2022, 2019, 2016











Windows-10


... Windows 10 FAQ
... Windows 10 How To


Windows 10 How To


... Windows 11 How To
... Windows 10 FAQ



PowerShell: Converts a string containing one or more key/value pairs to a hash table.

HTTP: ... PS_Windows/en/ConvertFrom-StringData.htm
0.078
18208
Was ist ein Flachbildschirm?
WINDOWS SETTING MS SETTINGS REGIONLANGUAGE CHSIME WUBI UDP
What is an exclusion list?
Left-Right Arrow Keys?
WINDOWS SETTING MS SETTINGS TABLETMODE
Was ist Digitale Infrastruktur?
WINDOWS SETTING MS SETTINGS SOUND DEFAULTOUTPUTPROPERTIES
Übertaktete Systeme?
WINDOWS SETTING MS SETTINGS MULTITASKING
WINDOWS EINSTELLUNG MS SETTINGS MOUSETOUCHPAD



(0)