Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

episode parse

By: a guest on Jun 26th, 2011  |  syntax: C#  |  size: 2.93 KB  |  views: 39  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. private bool ReadEpisodeInfos()
  2.         {
  3.             cfgReader = new XmlTextReader("episodeInfos.xml");
  4.  
  5.             cfgReader.WhitespaceHandling = WhitespaceHandling.None;
  6.  
  7.             try
  8.             {
  9.                 while (cfgReader.Read())
  10.                 {
  11.                     if (cfgReader.NodeType == XmlNodeType.EndElement || cfgReader.Name == "")
  12.                     {
  13.                         continue;
  14.                     }
  15.                     else if (cfgReader.NodeType == XmlNodeType.Element)
  16.                     {
  17.                         if (cfgReader.Name.Equals("Season1"))
  18.                         {
  19.                             HandleEpisode();
  20.                         }
  21.                     }
  22.                 }
  23.             }
  24.             catch (FileNotFoundException)
  25.             {
  26.                 MessageBox.Show("Couldn't open \"episodeInfos.xml\"! Please download again!", "Error opening \"episodeInfos.xml\"", MessageBoxButton.OK);
  27.                 this.Close();
  28.             }
  29.             catch (Exception)
  30.             {
  31.                 MessageBox.Show("Couldn't load \"episodeInfos.xml\"! Make sure it's not opened. You might also check the syntax.", "Error loading \"episodeInfos.xml\"", MessageBoxButton.OK);
  32.                 this.Close();
  33.             }
  34.  
  35.             cfgReader.Close();
  36.             return true;
  37.         }
  38.  
  39.         private void HandleEpisode()
  40.         {
  41.             int seasonNr;
  42.             int episodeNr;
  43.  
  44.             try
  45.             {
  46.                 DateTime tmp;
  47.                 for (seasonNr = 0; seasonNr < season.Length; seasonNr++)
  48.                 {
  49.                     cfgReader.Read();
  50.  
  51.                     for (episodeNr = 0; episodeNr < season[seasonNr].episode.Length; episodeNr++)
  52.                     {
  53.                         cfgReader.MoveToFirstAttribute();
  54.                         season[seasonNr].episode[episodeNr].id = cfgReader.ReadContentAsInt();
  55.                         cfgReader.MoveToNextAttribute();
  56.                         season[seasonNr].episode[episodeNr].title = cfgReader.ReadContentAsString();
  57.                         cfgReader.MoveToNextAttribute();
  58.  
  59.                         DateTime.TryParse(cfgReader.Value, out tmp);
  60.                         season[seasonNr].episode[episodeNr].airDate = tmp;
  61.  
  62.                         cfgReader.MoveToNextAttribute();
  63.                         season[seasonNr].episode[episodeNr].views = cfgReader.ReadContentAsDouble();
  64.  
  65.                         cfgReader.MoveToContent();
  66.                         season[seasonNr].episode[episodeNr].description = cfgReader.ReadElementContentAsString();
  67.                     }
  68.                     cfgReader.Read();
  69.                 }
  70.             }
  71.             catch (Exception ex)
  72.             {
  73.                 MessageBox.Show("An error occured while loading episode information.\nError message:\n" + ex.Message, "Error!", MessageBoxButton.OK, MessageBoxImage.Error);
  74.             }
  75.         }