diff --git a/NoSoliciting.Trainer/NoSoliciting.Trainer.csproj b/NoSoliciting.Trainer/NoSoliciting.Trainer.csproj index 43b13f4..0866e70 100755 --- a/NoSoliciting.Trainer/NoSoliciting.Trainer.csproj +++ b/NoSoliciting.Trainer/NoSoliciting.Trainer.csproj @@ -11,7 +11,7 @@ - + diff --git a/NoSoliciting.Trainer/Program.cs b/NoSoliciting.Trainer/Program.cs index 8a74295..ed0980f 100644 --- a/NoSoliciting.Trainer/Program.cs +++ b/NoSoliciting.Trainer/Program.cs @@ -64,12 +64,18 @@ namespace NoSoliciting.Trainer { }; foreach (var emlPath in Directory.GetFiles(path, "*.eml")) { var message = MimeMessage.Load(opts, new FileStream(emlPath, FileMode.Open)); - var json = message.TextBody.Split('\r', '\n').FirstOrDefault(line => line.StartsWith("JSON: ")); - if (json == null) { + var lines = message.TextBody + .Split('\r', '\n') + .SkipWhile(line => !line.StartsWith("JSON: ")) + .Select(line => line.Replace("JSON: ", "").Replace(" ", "").Trim()) + .ToArray(); + if (lines.Length == 0) { continue; } - var jsonText = Encoding.UTF8.GetString(Convert.FromBase64String(json.Split(": ")[1])); + var json = string.Join("", lines); + + var jsonText = Encoding.UTF8.GetString(Convert.FromBase64String(json)); var report = JsonConvert.DeserializeObject(jsonText); var content = XivString.GetText(report.Content); var data = new Data(report.Type, content) {