为了提取信息框内包含的信息,我正在用维基百科页面Java。Java刮字符集问题
所有的工作都很好,除了字符编码。 维基百科页面使用“UTF-8”编码。
Ubuntu eclipse控制台也使用“UTF-8”作为默认编码。 但是,eclipse控制台在显示信息时会显示一些奇怪的符号。 (如:中Smith · Ricardo
代替Smith · Ricardo
)
这是我用来读取数据的功能(它遍历一个节点的所有后代,并加入他们的文本信息在结尾):
private String getTextContent(Node node) {
String text = "";
List<Node> children = null;
if (isTextNode(node)) {
return node.getNodeValue();
}
else if (!node.hasChildNodes()) {
return "";
}
else {
children = toList(node.getChildNodes());
for (Node childNode : children) {
text += getTextContent(childNode);
}
}
return text;
}
我忘了提我正在使用JTidy库进行抓取。
向我们展示一些代码 - 当您读取数据时是否明确指定了编码? –
当我读取数据时,我没有指定任何编码。 – user278064
你知道,你不需要屏幕维基百科?你可以[全部下载](http://dumps.wikimedia.org/)! –