HTMLParser仅转换文件的第一行

时间:2009-05-05 10:27:04

标签: html itext data-conversion

我正在使用iText for .NET将HTML转换为PDF 我正在使用HtmlParser将HTML页面转换为PDF,但问题是Htmlparser似乎只将第一行转换为pdf HTML文件中的所有其他行都不会转换为PDF。

这是代码

Document document = new Document();
        final = new Document();

        StreamWriter writer = new StreamWriter("fck.txt");
        writer.WriteLine(FCKeditor1.Value);
        writer.Close();
        // Changing the extension of txt file to html file
        File.Move("C:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE\\fck.txt", "C:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE\\fck.html");
        PdfWriter writer1 = PdfWriter.GetInstance(final, new FileStream("final1.pdf", FileMode.Create));

        final.Open();
        HtmlParser.Parse(final, "fck.html");
        final.Close();
        File.Delete("C:\\Program Files\\Microsoft Visual Studio 9.0\\Common7\\IDE\\fck.html");

所以请帮助我 非常感谢你提前帮助

3 个答案:

答案 0 :(得分:3)

我用

StreamReader tempReader = new StreamReader(tempFile);

        ArrayList p = HTMLWorker.ParseToList(tempReader,st); 

        for (int k = 0; k < p.Count; k++) 
        {
            documento.Add((IElement)p[k]); 
        }

        tempReader.Dispose();
        documento.Close();

并且工作正常。但我把处置放在最后

答案 1 :(得分:1)

哦,我终于得到了解决方案 我没有使用htmlparser类,而是使用了htmlworker类 这是新代码

ArrayList p = HTMLWorker.ParseToList(new StreamReader("fck.html"), st);
for (int k = 0; k < p.Count; k++)
{
    final.Add((IElement)p[k]);
}
final.Close();

答案 2 :(得分:0)

  

错误1无法隐式转换类型   'System.Collections.Generic.List'到   'System.Collections.ArrayList'

像这样使用:

List<IElement> htmlarraylist = HTMLWorker.ParseToList(new StreamReader(tempFile),new StyleSheet());
                foreach (IElement element in htmlarraylist)
                {
                    document.Add(element);
                }