Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan elemezhet egy sztringet egy XML-fa C#-ban és Visual Basicben való létrehozásához.
Példa
Az alábbi C#-kód bemutatja, hogyan elemezhet egy XML-sztringet:
XElement contacts = XElement.Parse(
@"<Contacts>
<Contact>
<Name>Patrick Hines</Name>
<Phone Type=""home"">206-555-0144</Phone>
<Phone Type=""work"">425-555-0145</Phone>
<Address>
<Street1>123 Main St</Street1>
<City>Mercer Island</City>
<State>WA</State>
<Postal>68042</Postal>
</Address>
<NetWorth>10</NetWorth>
</Contact>
<Contact>
<Name>Gretchen Rivas</Name>
<Phone Type=""mobile"">206-555-0163</Phone>
<Address>
<Street1>123 Main St</Street1>
<City>Mercer Island</City>
<State>WA</State>
<Postal>68042</Postal>
</Address>
<NetWorth>11</NetWorth>
</Contact>
</Contacts>");
Console.WriteLine(contacts);
A Visual Basicben hasonló módon elemezhet egy sztringet. Az XML-literálok használata azonban hatékonyabb, ahogyan az a következő kódban is látható, mivel az XML-literálok nem szenvednek ugyanolyan teljesítménybeli büntetést, mint az XML sztringből történő elemzése.
AZ XML-literálok használatával egyszerűen másolhatja és beillesztheti az XML-t a Visual Basic programba.
Feljegyzés
A szöveg elemzése vagy egy XML-dokumentum betöltése egy szövegfájlból kevésbé hatékony, mint a funkcionális szerkezet. Ha kódból inicializál egy XML-fát, kevesebb processzoridőt vesz igénybe a funkcionális szerkezet használata, mint a szöveg elemzése.
Dim contacts as XElement = _
<Contacts>
<Contact>
<Name>Patrick Hines</Name>
<Phone Type="home">206-555-0144</Phone>
<Phone Type="work">425-555-0145</Phone>
<Address>
<Street1>123 Main St</Street1>
<City>Mercer Island</City>
<State>WA</State>
<Postal>68042</Postal>
</Address>
<NetWorth>10</NetWorth>
</Contact>
<Contact>
<Name>Gretchen Rivas</Name>
<Phone Type="mobile">206-555-0163</Phone>
<Address>
<Street1>123 Main St</Street1>
<City>Mercer Island</City>
<State>WA</State>
<Postal>68042</Postal>
</Address>
<NetWorth>11</NetWorth>
</Contact>
</Contacts>
A gyökércsomópont Contacts két Contact csomópontból áll. Az elemzett XML bizonyos adatainak eléréséhez használja az XElement.Elements() metódust, amely ebben az esetben a gyökércsomópont Contacts gyermekelemeit adja vissza. Az alábbi példa az első Contact csomópontot nyomtatja ki a konzolra:
List<XElement> contactNodes = contacts.Elements("Contact").ToList();
Console.WriteLine(contactNodes[0]);
Dim contactNodes As List(Of XElement) = contacts.Elements("Contact").ToList()
Console.WriteLine(contactNodes(0))