Megosztás a következőn keresztül:


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-Jsonis csövezheti.

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