Description:
I have two xml files XML1 and XML2 which contains the following values
I need to get the xml values in a string array which contains the values from XML1 where XML2 not contains XML1 values (i.e. XML1 has four values "A","B","C" & "D" and XML2 has two values "A" & "B". I need to get only "C" &"D" in the string array)
Steps Involved:
- Go to Start, Click on All Programs.
- Click on Microsoft SharePoint 2010 Products.
- Right click on SharePoint 2010 Management Shell, and then click on Run as administrator.
Using Powershell get all the values XML1 file:
Run the following script in the SharePoint 2010 Management Shell
$XML1path = "C:\Users\\Desktop\XML1.xml"
[String[]]$strXML1=@()
[xml]$xml = get-content $XML1path
$nodeXML1 = @()
foreach ($nodeXML1 in $xml.Inputs.XML1)
{
[String[]]$strXML1=[String[]]$strXML1+$nodeXML1
}
Output:
Type $strXML1 in the SharePoint 2010 Management Shell, you will be getting the following values
A
B
C
D
Using Powershell get all the values XML2 file:
Run the following script in the SharePoint 2010 Management Shell
$XML2path = "C:\Users \Desktop\XML2.xml"
[String[]]$strXML2=@()
[xml]$xml = get-content $XML2path
$nodeXML2 = @()
foreach ($nodeXML2 in $xml.Inputs.XML2)
{
[String[]]$strXML2=[String[]]$strXML2+$nodeXML2
}
Output:
Type $strXML2 in the SharePoint 2010 Management Shell, you will be getting the following values
A
B
Run the following script in the SharePoint 2010 Management Shell
[String[]] $final=@($strXML1 | where{$strXML2 -notcontains $_})
Output:
Type $final in the SharePoint 2010 Management Shell, you will be getting the following values
C
D