コード例 #1
0
        public RecueilExchange ReadFile(string path)
        {
            using StreamReader streamReader = new StreamReader(path);
            string textContent = streamReader.ReadToEnd();

            streamReader.Close();

            List <string> textContentSplited = textContent.Split("* * *").ToList();

            _logger.LogInformation($"Nombre de commentaire PaS trouvé : {textContentSplited.Count}");

            RecueilExchange           recueils      = new RecueilExchange();
            Dictionary <int, Recueil> recueilsAnnee = new Dictionary <int, Recueil>();

            foreach (string texte in textContentSplited)
            {
                if (!string.IsNullOrWhiteSpace(texte))
                {
                    Commentaire commentaire = ImportCommentaire(texte);

                    if (commentaire.IsValid)
                    {
                        if (recueilsAnnee.TryGetValue(commentaire.Date.Year, out Recueil recueil))
                        {
                            recueil.CommentairesId.Add(commentaire.Id);
                        }
                        else
                        {
                            recueilsAnnee.Add(commentaire.Date.Year, new Recueil
                            {
                                Id    = Guid.NewGuid().ToString(),
                                Annee = commentaire.Date.Year,
                                Titre = $"Plaire au Seigneur {commentaire.Date.Year}"
                            });
                        }

                        recueils.Commentaires.Add(commentaire);
                    }
                    else
                    {
                        _logger.LogError($"commentaire incomplet dans {commentaire.Titre}");
                    }
                }
            }

            recueils.Recueils.AddRange(recueilsAnnee.Values);

            return(recueils);
        }
コード例 #2
0
        private static void RunOptions(CommandLineOptions opts)
        {
            RecueilExchange recueils = _bibleOnlineImporter.ReadFile(opts.InputFile);

            _mySwordCommentariesExport.Save(recueils.Commentaires, opts.Output);
            _myBibleCommentariesExport.Save(recueils.Commentaires, opts.Output);
            _osisCommentariesExport.Save(recueils.Commentaires, opts.Output);

            using StreamWriter file = new StreamWriter(@"output.html");

            foreach (var commentaire in recueils.Commentaires)
            {
                file.WriteLine(_commentaireHtmlFormater.ToString(commentaire));
            }

            Console.WriteLine(FiggleFonts.Swan.Render("Success !"), Color.Green);
        }