initial work on LG GlobalClone 2.00 JSON file format

This commit is contained in:
Horst Beham
2020-05-03 12:12:09 +02:00
parent dc810b0a12
commit 77fdde0cf1
4 changed files with 54 additions and 5 deletions

View File

@@ -1,4 +1,6 @@
using ChanSort.Api;
using System.IO;
using System.Text;
using ChanSort.Api;
namespace ChanSort.Loader.GlobalClone
{
@@ -10,7 +12,18 @@ namespace ChanSort.Loader.GlobalClone
public SerializerBase CreateSerializer(string inputFile)
{
return new GcSerializer(inputFile);
// files with <TLLDATA><ModelInfo><CloneVersion><MajorVersion>200</MajorVersion> .... contain all the actual channel data in JSON format inside a <legacybroadcast> element
var content = File.ReadAllText(inputFile, Encoding.UTF8);
var startTag = "<legacybroadcast>";
var start = content.IndexOf(startTag);
if (start >= 0)
{
var end = content.IndexOf("</legacybroadcast>", start);
var json = content.Substring(start + startTag.Length, end - start - startTag.Length);
return new GcJsonSerializer(inputFile, content);
}
return new GcXmlSerializer(inputFile);
}
}
}