ConvertTo-Json
Egy objektumot JSON-formátumú sztringgé alakít át.
Syntax
Default (Alapértelmezett)
ConvertTo-Json
[-InputObject] <Object>
[-Depth <Int32>]
[-Compress]
[<CommonParameters>]
Description
A ConvertTo-Json parancsmag minden objektumot JavaScript Object Notation (JSON) formátumú sztringgé alakít át. A tulajdonságok mezőnevekké lesznek konvertálva, a mezőértékek tulajdonságértékekké alakulnak, és a metódusok törlődnek.
Ezután a ConvertFrom-Json parancsmaggal JSON-formátumú sztringet alakíthat át JSON-objektummá, amely könnyen kezelhető a Windows PowerShellben.
Sok webhely az XML helyett JSON-t használ az adatok szerializálására a kiszolgálók és a webalapú alkalmazások közötti kommunikációhoz.
Ezt a parancsmagot a Windows PowerShell 3.0-ban vezettük be.
Példák
1. példa
PS C:\> (Get-UICulture).Calendar | ConvertTo-Json
{
"MinSupportedDateTime": "\/Date(-62135596800000)\/",
"MaxSupportedDateTime": "\/Date(253402300799999)\/",
"AlgorithmType": 1,
"CalendarType": 1,
"Eras": [
1
],
"TwoDigitYearMax": 2029,
"IsReadOnly": false
}
Ez a példa a ConvertTo-Json parancsmagot használja a GregorianCalendar objektum JSON-formátumú sztringgé alakításához.
2. példa
PS C:\> @{Account="User01";Domain="Domain01";Admin="True"} | ConvertTo-Json -Compress
{"Admin":"True","Account":"User01","Domain":"Domain01"}
Ez a példa a -Compress paraméterének használatát mutatja be.
A tömörítés csak a sztring megjelenését befolyásolja, érvényességét nem.
3. példa
PS C:\> Get-Date | Select-Object -Property * | ConvertTo-Json
{
"DisplayHint": 2,
"DateTime": "Friday, January 13, 2012 8:06:16 PM",
"Date": "\/Date(1326441600000)\/",
"Day": 13,
"DayOfWeek": 5,
"DayOfYear": 13,
"Hour": 20,
"Kind": 2,
"Millisecond": 221,
"Minute": 6,
"Month": 1,
"Second": 16,
"Ticks": 634620819762218083,
"TimeOfDay": {
"Ticks": 723762218083,
"Days": 0,
"Hours": 20,
"Milliseconds": 221,
"Minutes": 6,
"Seconds": 16,
"TotalDays": 0.83768775241087956,
"TotalHours": 20.104506057861109,
"TotalMilliseconds": 72376221.8083,
"TotalMinutes": 1206.2703634716668,
"TotalSeconds": 72376.22180829999
},
"Year": 2012
}
Ez a példa a ConvertTo-Json parancsmaggal konvertál egy System.DateTime objektumot a Get-Date parancsmagból JSON formátumú sztringgé. A parancs az Select-Object parancsmagot használja a * objektum tulajdonságainak () lekéréséhez. A kimenet azt a JSON-sztringet jeleníti meg, amelyet ConvertTo-Json visszaadni.
4. példa
PS C:\> Get-Date | Select-Object -Property * | ConvertTo-Json | ConvertFrom-Json
DisplayHint : 2
DateTime : Saturday, October 13, 2018 3:28:40 AM
Date : 10/13/2018 12:00:00 AM
Day : 13
DayOfWeek : 6
DayOfYear : 286
Hour : 3
Kind : 2
Millisecond : 346
Minute : 28
Month : 10
Second : 40
Ticks : 636749981203464381
TimeOfDay : @{Ticks=125203464381; Days=0; Hours=3; Milliseconds=346; Minutes=28; Seconds=40;
TotalDays=0.14491141710763888; TotalHours=3.4778740105833332; TotalMilliseconds=12520346.4381;
TotalMinutes=208.67244063500002; TotalSeconds=12520.3464381}
Year : 2018
Ez a példa bemutatja, hogyan konvertálhat objektumot JSON-sztringgé és JSON-objektummá a ConvertTo-Json és ConvertFrom-Json parancsmagokkal.
Paraméterek
-Compress
Kihagyja a szóközt és a behúzott formázást a kimeneti sztringben.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Depth
Megadja, hogy hány szint tartalmazott objektumokat a JSON-ábrázolásban. Az alapértelmezett érték 2.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | 2 |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-InputObject
Meghatározza azokat az objektumokat, amelyeket JSON formátumba szeretne konvertálni.
Adjon meg egy változót, amely tartalmazza az objektumokat, vagy írjon be egy parancsot vagy kifejezést, amely lekéri az objektumokat.
Az objektumokat a ConvertTo-Json
Az InputObject paraméter megadása kötelező, de értéke lehet null ($null) vagy üres sztring.
Ha a bemeneti objektum $null, ConvertTo-Json nem hoz létre kimenetet.
Ha a bemeneti objektum egy üres sztring, ConvertTo-Json egy üres sztringet ad vissza.
Paramétertulajdonságok
| Típus: | Object |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
Object
Bármilyen objektumot a ConvertTo-Json
Kimenetek
String
Jegyzetek
- A ConvertTo-Json parancsmag a JavaScriptSerializer osztályhasználatával implementálható.