Как я могу получить данные с этого сайта xml (http://xboxapi.duncanmackenzie.net/gamertag.ashx?GamerTag=Festive+Turkey) и указать данные и использовать их в виде строки?C# - Получение данных из онлайн-файла xml
3
A
ответ
3
Если вы хотите, чтобы получить XML в читаемую структуру данных напрямую, вы можете загрузить его с помощью URI прямо в объект XDocument.
string uri = "http://xboxapi.duncanmackenzie.net/gamertag.ashx?GamerTag=Festive+Turkey";
XDocument document = XDocument.Load(uri);
Затем вы можете легко извлечь информацию через Linq-to-XML в бетон или анонимный тип. (Проверьте пространство имен System.Linq и System.Xml.Linq.)
Других методов борьбы с XML включают сериализацию, XmlDocuments и XPath и т.д.
Вот пример того, что вы могли бы сделать с XML и Linq.
using System;
using System.Linq;
using System.Xml.Linq;
class XboxStats
{
static void Main()
{
string uri = "http://xboxapi.duncanmackenzie.net/gamertag.ashx?GamerTag=Festive+Turkey";
XDocument document = XDocument.Load(uri);
var xboxInfo = document.Element("XboxInfo");
var data = new
{
AccountStatus = (string)xboxInfo.Element("AccountStatus"),
PresenceInfo = new
{
Valid = (bool)xboxInfo.Element("PresenceInfo").Element("Valid"),
Info = (string)xboxInfo.Element("PresenceInfo").Element("Info"),
Info2 = (string)xboxInfo.Element("PresenceInfo").Element("Info2"),
LastSeen = (DateTime)xboxInfo.Element("PresenceInfo").Element("LastSeen"),
Online = (bool)xboxInfo.Element("PresenceInfo").Element("Online"),
StatusText = (string)xboxInfo.Element("PresenceInfo").Element("StatusText"),
Title = (string)xboxInfo.Element("PresenceInfo").Element("Title")
},
State = (string)xboxInfo.Element("State"),
Gamertag = (string)xboxInfo.Element("Gamertag"),
ProfileUrl = (string)xboxInfo.Element("ProfileUrl"),
TileUrl = (string)xboxInfo.Element("TileUrl"),
Country = (string)xboxInfo.Element("Country"),
Reputation = (decimal)xboxInfo.Element("Reputation"),
Bio = (string)xboxInfo.Element("Bio"),
Location = (string)xboxInfo.Element("Location"),
ReputationImageUrl = (string)xboxInfo.Element("ReputationImageUrl"),
GamerScore = (int)xboxInfo.Element("GamerScore"),
Zone = (string)xboxInfo.Element("Zone"),
RecentGames = new
{
XboxUserGameInfos = from gameInfo in xboxInfo.Element("RecentGames").Elements("XboxUserGameInfo")
select new
{
Game = new
{
Name = (string)gameInfo.Element("Game").Element("Name"),
TotalAchievements = (int)gameInfo.Element("Game").Element("TotalAchievements"),
TotalGamerScore = (int)gameInfo.Element("Game").Element("TotalGamerScore"),
Image32Url = (string)gameInfo.Element("Game").Element("Image32Url"),
Image64Url = (string)gameInfo.Element("Game").Element("Image64Url")
},
LastPlayed = (DateTime)gameInfo.Element("LastPlayed"),
Achievements = (int)gameInfo.Element("Achievements"),
GamerScore = (int)gameInfo.Element("GamerScore"),
DetailsUrl = (string)gameInfo.Element("DetailsUrl")
}
}
};
Console.WriteLine(data.AccountStatus);
foreach (var gameInfo in data.RecentGames.XboxUserGameInfos)
{
Console.WriteLine(gameInfo.Game.Name);
}
Console.Read();
}
}
6
Используйте WebClient объект
public static string GetWebPage(Uri uri) {
if ((uri == null)) {
throw new ArgumentNullException("uri");
}
using (var request = new WebClient()) {
//Download the data
var requestData = request.DownloadData(uri);
//Return the data by encoding it back to text!
return Encoding.ASCII.GetString(requestData);
}
}
0
Вы можете использовать WebClient
класса:
Uri url = new Uri("http://xboxapi.duncanmackenzie.net/gamertag.ashx?GamerTag=" + Uri.EscapeDataString(str));
using (var wc = new WebClient()) {
return request.DownloadString(url);
}
Смежные вопросы
- 1. C# получение данных из XML Десериализованного объекта
- 2. Получение XML-данных из Xerces (C++)
- 3. Получение данных из XML
- 4. Получение данных из XML-файла
- 5. Получение данных из узлов XML
- 6. Получение данных из facebook xml
- 7. Получение XML-данных из строки
- 8. Получение данных из тега xml
- 9. Получение данных из XML-файла
- 10. Получение данных из XML иерархически
- 11. Получение конкретных данных из XML
- 12. Получение xml из набора данных
- 13. Получение данных из XML-строки
- 14. Получение данных из файла XML
- 15. Получение значений из XML - C#
- 16. C# Получение данных из DataSet
- 17. Получение XML-документа из базы данных Universe
- 18. VB.net - Получение данных из файла XML
- 19. Извлечение данных из XML в C# получение NullReference
- 20. Получение данных из простого массива XML
- 21. C# Получение данных из XLS
- 22. Получение данных XML из 3-й функции?
- 23. Получение данных из xml в карточку листовки
- 24. Получение данных из XML с помощью jQuery
- 25. Получение данных из xml по атрибуту vlaue
- 26. Получение данных из XML-файла в WebBrowser
- 27. Получение xml данных из url в php
- 28. js получение данных из xml response.text()
- 29. Получение данных из xml в потоке?
- 30. php получение данных из XML-файла