jena 从压缩文件中读取输入流
jena read inputstream from gzipped file
我有以下代码可以使用输入流将数据集读入 jena 模型,但是我希望我的程序也能够读取压缩(gzipped)文件(使用 filePath)。
Dataset dataset = TDBFactory.createDataset(tdbPath);
Model model = dataset.getDefaultModel();
InputStream str = FileManager.get().open(filePath);
model.read(str,null, "N-TRIPLES");
您需要创建一个 GZIPInputStream 才能读取它
Dataset dataset = TDBFactory.createDataset(tdbPath);
Model model = dataset.getDefaultModel();
InputStream str = FileManager.get().open(filePath);
if (useGZIP) {
str = new GZIPInputStream(str);
}
model.read(str,null, "N-TRIPLES");
如果您使用较新的 RDFDataMgr
API,那么 GZip 压缩应该完全透明地处理:
RDFDataMgr.read(model, filePath, Lang.NTRIPLES);
我有以下代码可以使用输入流将数据集读入 jena 模型,但是我希望我的程序也能够读取压缩(gzipped)文件(使用 filePath)。
Dataset dataset = TDBFactory.createDataset(tdbPath);
Model model = dataset.getDefaultModel();
InputStream str = FileManager.get().open(filePath);
model.read(str,null, "N-TRIPLES");
您需要创建一个 GZIPInputStream 才能读取它
Dataset dataset = TDBFactory.createDataset(tdbPath);
Model model = dataset.getDefaultModel();
InputStream str = FileManager.get().open(filePath);
if (useGZIP) {
str = new GZIPInputStream(str);
}
model.read(str,null, "N-TRIPLES");
如果您使用较新的 RDFDataMgr
API,那么 GZip 压缩应该完全透明地处理:
RDFDataMgr.read(model, filePath, Lang.NTRIPLES);