Advertisement
sec_goat

GenresApiLINQtoXML

Feb 19th, 2013
37
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.40 KB | None | 0 0
  1.  class Program
  2.     {
  3.         static void Main(string[] args)
  4.         {
  5.             Dictionary<int, String> genres = new Dictionary<int, string>();
  6.  
  7.             Console.WriteLine("begin: " + DateTime.Now);
  8.  
  9.             var xd = XDocument.Load("fixedAPI.nfpox");
  10.             var query = (from xe in xd.Descendants()
  11.                         from xa in xe.Attributes()
  12.                         where xa.Name == "scheme" && xa.Value.Contains("genre")
  13.                         group xa.NextAttribute by xa into grouping
  14.                         select grouping);
  15.             foreach (IGrouping<XAttribute, XAttribute> entry in query)
  16.             {
  17.                 var genreID = Convert.ToInt32(entry.Key.Value.Split('/').Last());
  18.                 var genreString = entry.Key.NextAttribute.Value.Split('=').Last();
  19.  
  20.                 if (!genres.ContainsKey(genreID))
  21.                 {
  22.                     genres.Add(genreID, genreString);
  23.                 }
  24.             }
  25.  
  26.             foreach (KeyValuePair<int, string> kvp in genres)
  27.             {
  28.                 //Console.WriteLine(kvp.Key + " " + kvp.Value);
  29.                 using (StreamWriter writer = new StreamWriter("genres.txt", true))
  30.                 {
  31.                     writer.WriteLine(kvp.Key + " " + kvp.Value);
  32.                 }
  33.             }
  34.         Console.WriteLine("End: " + DateTime.Now);
  35.             Console.ReadKey();
  36.  
  37.         }
  38.     }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement