Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中删除Jtidy中的警告_Java_Jtidy - Fatal编程技术网

如何在java中删除Jtidy中的警告

如何在java中删除Jtidy中的警告,java,jtidy,Java,Jtidy,我正在java中使用Jtidy解析器 URL url = new URL("www.yahoo.com"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); InputStream in = conn.getInputStream(); doc = new Tidy().parseDOM(in, null); 当我运行此命令时,“doc=new Tidy().parseDOM(in,null);” 我收到

我正在java中使用Jtidy解析器

URL url = new URL("www.yahoo.com"); 
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStream in = conn.getInputStream(); 
doc = new Tidy().parseDOM(in, null);
当我运行此命令时,“doc=new Tidy().parseDOM(in,null);” 我收到如下警告:

Tidy (vers 4th August 2000) Parsing "InputStream"
line 140 column 5 - Warning: <table> lacks "summary" attribute

InputStream: Doctype given is "-//W3C//DTD XHTML 1.0 Strict//EN"
InputStream: Document content looks like HTML 4.01 Transitional

1 warnings/errors were found!

请帮助我,如何执行此操作,如何从控制台中删除这些警告。

如果要将JTidy警告重定向到(比如)log4j记录器,请阅读

如果您只是想让它们消失(以及其他控制台输出),则使用
System.setOut()
和/或
System.setErr()
将输出发送到文件。。。或者黑洞

对于jtidyrelease8(或更高版本),该方法更优雅地处理消息



或者,您可以向
webmaster@yahoo.com
:-)

查看文档,我发现了一些方法,可以满足您的需要

setShowErrors
setQuiet
setErrout
。您可能需要尝试以下操作:

Tidy tidy = new Tidy();
tidy.setShowErrors(0);
tidy.setQuiet(true);
tidy.setErrout(null);
doc = tidy.parseDOM(in, null);

其中一个可能已经足够了,这些都是我找到的选择。请注意,这只会隐藏消息,而不会对其执行任何操作。还有
setForceOutput
来获取输出,即使生成了错误。

查看文档,我发现在这种特殊情况下,另一种方法对我来说似乎更好:
setShowWarnings(boolean)
。此方法将隐藏警告,但仍将抛出错误

有关更多信息,请查看此处:
)根据Joost的回答,我认为这是最好的解决方案:

Tidy tidy = new Tidy();
tidy.setShowErrors(0);
tidy.setShowWarnings(false);
tidy.setQuiet(true);
这三点都是必要的

Writer out = new NullWriter();
PrintWriter dummyOut = new PrintWriter(out);
tidy.setErrout(dummyOut);
Tidy tidy = new Tidy();
tidy.setShowErrors(0);
tidy.setShowWarnings(false);
tidy.setQuiet(true);