我正在寻找C#代码将HTML文档转换为纯文本.
我不是在寻找简单的标签剥离,而是要输出纯文本,并合理保留原始布局.
输出应如下所示:
我看过HTML Agility Pack,但我认为这不是我需要的.有没有人有任何其他建议?
编辑:我只是从CodePlex下载HTML Agility Pack ,并运行Html2Txt项目.多么令人失望(至少是html到文本转换的模块)!所有这一切都是剥离标签,压平表等.输出看起来不像Html2Txt @ W3C产生的.太糟糕了,这个来源似乎不可用.我当时想看看是否有更多的"罐装"解决方案.
编辑2:谢谢大家的建议. FlySwat向我倾斜了我想去的方向.我可以使用System.Diagnostics.Process类的"突降"开关运行lynx.exe将文本发送到标准输出,并与捕获标准输出ProcessStartInfo.UseShellExecute = false和ProcessStartInfo.RedirectStandardOutput = true.我将把所有这些包装在一个C#类中.这个代码只会偶尔被调用,所以我不太关心产生一个新进程而不是代码执行它.另外,Lynx很快!
我已经搜索了这个术语,并且只能找到一些参考文献,但我已经多次提到了它.这些参考文献似乎都不具有"权威性".
最近我可以说,"ad-hoc解析"涉及将输入分成块并处理这些块.也许这是正确的,我不知道.
有人可以帮助我找到一些资源来解释更完整的临时解析吗?该术语的起源是什么(来自学术界等)?什么是临时解析的例子?
我的任务是创建一个原型Web应用程序,我正在讨论使用ASP.NET WebForms或新的ASP.NET MVC.
有一个商业ASP.NET UserControl我想使用它给我95%的功能我需要(它以AJAX-y方式做到).但我听说,由于ASP.NET MVC不使用ViewState,它无法运行这些基于WebForms的控件.
那么,这是真是假?
我真的很想使用这个商业用户控件,但是如果可以的话我想使用ASP.NET MVC,并且只有当ASP.NET MVC在尝试使用基于WebForms的控件时不会给我带来太大麻烦时.
令人难以置信的令人敬畏的AvalonEdit WPF TextEditor控件似乎缺乏一个重要的功能,或者至少我无法弄明白.给定偏移量和长度,使用HighlightColor突出显示TextDocument中的该部分.简单吧?
显然不是.我有RTFM,关于"语法突出显示"的文档让我更加困惑.有人在SharpDevelop论坛上问了同样的问题,我恐怕无法理解Herr Grunwald的回答.
这是我的尝试,使用DocumentHighlighter类(当然它不起作用):
textEditor1.Text = "1234567890";
HighlightingColor c = new HighlightingColor() { FontWeight = FontWeights.ExtraBold };
DocumentHighlighter dh = new DocumentHighlighter(textEditor1.Document, new HighlightingRuleSet());
HighlightedLine hl = dh.HighlightLine(1);
hl.Sections.Add(new HighlightedSection() { Color = c, Offset = 1, Length = 3 });
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮忙!