2012-07-05 37 views
6

Tôi có tập tin XML với dữ liệu nàyCách lấy Giá trị từ xml bằng PowerShell?

<?xml version="1.0" encoding="windows-1251" ?> 
<ValCurs Date="06/06/2012" name="Курби асъор"> 
<Valute ID="036"> 
    <CharCode>AUD</CharCode> 
    <Nominal>1</Nominal> 
    <Name>Доллари Австралия</Name> 
    <Value>4,6430</Value> 
    </Valute> 
<Valute ID="944"> 
    <CharCode>AZN</CharCode> 
    <Nominal>1</Nominal> 
    <Name>Манати Озарбой&#1207;он</Name> 
    <Value>6,0677</Value> 
    </Valute> 
<Valute ID="826"> 
    <CharCode>GBP</CharCode> 
    <Nominal>1</Nominal> 
    <Name>Фунт-стерлинги Ингилистон</Name> 
    <Value>7,3156</Value> 
    </Valute> 
... 

và khác

Làm thế nào tôi có thể nhận được dữ liệu trong 'danh nghĩa' và 'Giá trị' bởi 'Valute ID = '826'' tiêu chí Xin lỗi vì tôi tiếng anh

Trả lời

18

bạn có thể đọc XML đơn giản bằng cách đúc một chuỗi để [xml]:

$xml = [xml](Get-Content foo.xml) 

Sau đó, bạn có thể sử dụng

$xml.ValCurs.Valute | Where-Object {$_.ID -eq 826} | Select-Object Nominal,Value 

hoặc ngắn hơn:

$xml.ValCurs.Valute | ? {$_.ID -eq 826} | select Nominal,Value 
Các vấn đề liên quan