HTML 페이지에서 텍스트 파일로 추출 된 키릴 어 내용이 있습니다. 키릴 문자는이 파일에서 정상입니다. 그런 다음이 파일을 사용하여 Jena를 사용하여 RDF 파일을 만듭니다. ? 나는 RDF는 키릴 РўР РђРќРЎРљРћРџ-Р'Р 같다 РўРћР> Рђ 파일을 열 때jena 라이브러리를 사용하여 키릴 문자를 RDF 파일로 작성하십시오.
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);
}
: 여기 내 코드입니다. 누군가 나를 도울 수 있습니까?
내가 틀렸어. 먼저 OutputStreamWriter에서 utf-8 인코딩 설정을 잊어 버렸습니다. 그리고 나서 필자가 여는 텍스트 편집기에서 파일을 다시로드하지 않았습니다. 이제 텍스트 편집기에서 OK이지만 일식에서는 여전히 이상한 문자가 표시됩니다. – vikifor
그럼이 파일을 Eclipse에서 열 때를 제외하고 파일은 정상입니까? 이클립스의 기본 인코딩을 UTF-8로 설정해야한다. http://www.eclipse.org/forums/index.php/t/29511/에서 몇 가지 제안이나 유사한 주제에 대한 다른 StackOverflow 질문을 참조한다. –