Я хотел спросить, есть ли в Java способ чтения, в основном любой формат файла (N3, JSON, RDF-XML) и т. Д., А затем преобразовать его в черепаху (.ttl). Я искал в Google, чтобы получить некоторое представление, но они в основном просто объясняют определенные типы файлов и то, как тип файла может быть преобразован в RDF, тогда как я хочу, чтобы это было наоборот.
ИЗМЕНИТЬ (следуя примеру кода, приведенному в ответе):
if(FilePath.getText().equals("")){
FilePath.setText("Cannot be empty");
}else{
try {
// get the inputFile from file chooser and setting a text field with
// the path (FilePath is the variable name fo the textField in which the
// path to the selected file from file chooser is done earlier)
FileInputStream fis = new FileInputStream(FilePath.getText());
// guess the format of the input file (default set to RDF/XML)
// when clicking on the error I get take to this line.
RDFFormat inputFormat = Rio.getParserFormatForFileName(fis.toString()).orElse(RDFFormat.RDFXML);
//create a parser for the input file and a writer for Turtle
RDFParser rdfParser = Rio.createParser(inputFormat);
RDFWriter rdfWriter = Rio.createWriter(RDFFormat.TURTLE,
new FileOutputStream("./" + fileName + ".ttl"));
//link parser to the writer
rdfParser.setRDFHandler(rdfWriter);
//start the conversion
InputStream inputStream = fis;
rdfParser.parse(inputStream, fis.toString());
//exception handling
} catch (FileNotFoundException ex) {
Logger.getLogger(FileConverter.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(FileConverter.class.getName()).log(Level.SEVERE, null, ex);
}
}
Я добавил «eclipse-rdf4j-3.0.3-onejar.jar» в папку «Библиотеки» в NetBeans, и теперь, когда я запускаю программу, я продолжаю получать эту ошибку:
Исключение в потоке «AWT-EventQueue-0» java.lang.NoClassDefFoundError: org / slf4j / LoggerFactory в org.eclipse.rdf4j.common.lang.service.ServiceRegistry. (ServiceRegistry.java:31)
Любая помощь или совет будут очень признательны. Спасибо.