diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-06 11:11:51 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-06 11:11:51 -0400 |
| commit | 2f7b0b99da350f28252a05261304f8ef7778f491 (patch) | |
| tree | dfed04c1374423030da16e35de32c79ed5c9864e | |
| parent | 1ddc193e588f6231c327a769b580f48cba03a77f (diff) | |
support European encoding in xml files
| -rw-r--r-- | MediaBrowser.Controller/Providers/BaseItemXmlParser.cs | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs index 5286ce0d2..1b5e303dd 100644 --- a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs +++ b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs @@ -1,5 +1,6 @@ using System.Globalization; using System.IO; +using System.Text; using System.Text.RegularExpressions; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Entities; @@ -65,19 +66,23 @@ namespace MediaBrowser.Controller.Providers item.Genres.Clear(); item.People.Clear(); - // Use XmlReader for best performance - using (var reader = XmlReader.Create(metadataFile, settings)) + // Use european encoding as it will accept more characters + using (var streamReader = new StreamReader(metadataFile, Encoding.GetEncoding("ISO-8859-1"))) { - reader.MoveToContent(); - - // Loop through each element - while (reader.Read()) + // Use XmlReader for best performance + using (var reader = XmlReader.Create(streamReader, settings)) { - cancellationToken.ThrowIfCancellationRequested(); + reader.MoveToContent(); - if (reader.NodeType == XmlNodeType.Element) + // Loop through each element + while (reader.Read()) { - FetchDataFromXmlNode(reader, item); + cancellationToken.ThrowIfCancellationRequested(); + + if (reader.NodeType == XmlNodeType.Element) + { + FetchDataFromXmlNode(reader, item); + } } } } |
