コード例 #1
0
        private string GetHeader(PatternSearcher searcher)
        {
            PatternFound found = searcher.NextPattern(_BodyPattern);

            if (found.EndOfStreamReached == true)
            {
                throw new ApplicationException("Tag <Body> is not found.");
            }

            return(found.TextBeforePattern);
        }
コード例 #2
0
 private void GetPages(PatternSearcher searcher)
 {
     for (PatternFound found = searcher.NextPattern(_PagePattern); found.EndOfStreamReached == false; found = searcher.NextPattern(_PagePattern))
     {
         string page = ProcessHtmlPage(found.TextBeforePattern);
         if (string.IsNullOrEmpty(page) == false)
         {
             _Writer.AddPage(page);
         }
     }
     _Writer.CloseOutputStream();
 }
コード例 #3
0
 private void ProcessFile(string fileName)
 {
     try
     {
         using (StreamReader reader = new StreamReader(fileName))
         {
             PatternSearcher searcher = new PatternSearcher(reader, 8192);
             BuildHeader(searcher);
             _Writer = new HtmlWriter(_WorkingDir, _HtmlHeader, _HtmlFooter, _CurrentOptions.MaxSplitSizeInBytes);
             GetPages(searcher);
         }
     }
     catch (Exception)
     {
         if (_Writer != null)
         {
             _Writer.CloseOutputStream();
             _Writer = null;
         }
     }
 }
コード例 #4
0
        private void BuildHeader(PatternSearcher searcher)
        {
            string header = GetHeader(searcher);

            _HtmlHeader = _BodyStartTag;
        }