У меня есть извлеченный кириллический контент с HTML-страницы в текстовый файл. Кириллица в этом файле в порядке. Затем я использую этот файл для создания RDF-файла с помощью Jena. Вот мой код:
private void createRDFFile(String webContentFilePath) throws IOException {
// TODO Auto-generated method stub
Model model = ModelFactory.createDefaultModel();
RDFWriter writer = model.getWriter("RDF/XML");
writer.setProperty("showXmlDeclaration", "true");
writer.setProperty("showDoctypeDeclaration", "true");
writer.setProperty("tab", "8");
Writer out = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream(rdfFilePath), "UTF8"));
Resource resDest = null;
Property hasTimeStart = model.createProperty(ns + "#hasTimeStart");
Property distrName = model.createProperty(ns + "#distrName");
Property moneyOneDir = model.createProperty(ns + "#moneyOneDir");
Property moneyTwoDir = model.createProperty(ns + "#moneyTwoDir");
Property hasTimeStop = model.createProperty(ns + "#hasTimeStop");
BufferedReader br = new BufferedReader(new FileReader(
webContentFilePath));
String line = "";
while ((line = br.readLine()) != null) {
String[] arrayLine = line.split("\\|");
resDest = model.createResource(ns + arrayLine[5]);
resDest.addProperty(hasTimeStart, arrayLine[0]);
resDest.addProperty(distrName, arrayLine[1]);
resDest.addProperty(moneyOneDir, arrayLine[2]);
resDest.addProperty(moneyTwoDir, arrayLine[3]);
resDest.addProperty(hasTimeStop, arrayLine[4]);
}
br.close();
model.write(System.out, "RDF/XML");
writer.write(model, out, null);
}
Когда я открываю файл RDF, кириллица выглядит так: РўРђРќСРљРћРџ-ВР?РўРћРАА. Может ли кто-нибудь помочь мне?