以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  .nt 和.ttl 文件如何打开?有没有什么工具?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=84466)


--  作者:miaLee
--  发布时间:2010-4-23 9:29:00

--  .nt 和.ttl 文件如何打开?有没有什么工具?
刚下载了几个RDF数据集,使用的是N-triple形式,后缀名是.nt
我该怎么打开啊? 有什么工具没?
我自己试着用记事本打开的,小点的还行,稍微大点的数据集一打开就无响应!

其中有几个数据集是.ttl 的,这个又是什么表示形式的啊? 不懂耶

烦请高手指点哈?谢谢!


--  作者:miaLee
--  发布时间:2010-4-24 12:41:00

--  
没有人知道吗??
我其实就是想打开这些数据量巨大的RDF文件,看看里面的数据构成情况? 现在就是找不到能打开的工具…… 唉,郁闷呀
或者能读取.nt 和.ttl 的工具也行啊?
用过Jena的高手们给我点建议,,看是否能用Jena读取数据?如果可以,该怎么弄?
万分感谢啊!
焦急等待中……
--  作者:beyondlei
--  发布时间:2010-4-24 20:02:00

--  
一般的文本打开工具都要将整个文件读入内存,所以大文件打开时很慢或者可能内存不够。

很久以前写的一个小程序从大文件中提取出前n行:

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.io.PrintWriter;

public class RDFSampler {

/**
  * @param args
  */
public static void main(String[] args) throws Exception {
  String source = "D://wordnet.rdf";
  String target = "D://wordnet_sample.rdf";
  RDFSampler sampler = new RDFSampler(source, target, 1000);
  sampler.init();
  sampler.run();
  sampler.close();
}

private int lineCount = 10000;

private String sourceFile;
private String targetFile;
private BufferedReader br;
private PrintWriter pw;

public RDFSampler(String sourceFile, String targetFile) {
  this.sourceFile = sourceFile;
  this.targetFile = targetFile;
}

public RDFSampler(String sourceFile, String targetFile, int count) {
  this.sourceFile = sourceFile;
  this.targetFile = targetFile;
  this.lineCount = count;
}

public void init() throws Exception {
  br = new BufferedReader(new InputStreamReader(new FileInputStream(sourceFile)));
  pw = new PrintWriter(new FileWriter(targetFile));
}

public String readLine() throws Exception {
  return br.readLine();
}

public void writeLine(String line) {
  pw.println(line);
}

public void run() throws Exception {
  int count = 0;
  for (String line = br.readLine(); line != null && count < lineCount; line = br.readLine()) {
   count++;
   pw.println(line);
   System.out.println(line);
  }
}

public void close() throws Exception {
  br.close();
  pw.close();
}

}


--  作者:miaLee
--  发布时间:2010-4-24 20:34:00

--  
看来还是要自己动手写程序来读文件了

谢谢“beyondlei” 哈,我试试你的方法哦!


W 3 C h i n a ( 2 0 0 3 - 2 0 1 0 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms