【问题标题】:RDF/XML for apache jena format using java使用 java 的 apache jena 格式的 RDF/XML
【发布时间】:2018-07-23 17:59:06
【问题描述】:

list1[0] 更改为list1[1] 时出现的错误:

我正在做一个使用 Java 中的 RDF 模型从文件打印的程序,我想让对象成为 Sting,但我找不到方法,我尝试使用 2- d 数组,让它从文件中读取数据并将数据打印到输出屏幕。但是,它不起作用,我无法弄清楚原因。

这是我的代码:

String synonyms =null;

try {
        File file1 = new File("Data/9687.txt");
        FileReader fileReader1 = new FileReader(file1);
        BufferedReader bufferedReader1 = new BufferedReader(fileReader1);
        StringBuffer stringBuffer = new StringBuffer();
        String line1;
        System.out.println("Proteins & Synonyms:");
        while ((bufferedReader1.readLine()) != null) {
                line1 = bufferedReader1.readLine();
                String[] list1 = line1.split(“/t”)
                synonyms=model1.expandPrefix(list1[0]);
                proteinG.addProperty(hasSynonyms,synonyms); 

这是显示的输出消息:

<https://Bio2cv.net/ENSP000003488> <hasSynonyms> "ENSP000003488” .

资源的输出与字符串相同。

【问题讨论】:

  • 你想要的输出应该是什么样子的?
  • Bio2cv.net/9606.ENSP00000348838> “同义词名称”。我希望输出是这样的

标签: java rdf jena


【解决方案1】:

同义词是否在输入文件的第二列中? 如果是这样,你在这里使用了错误的索引0

            synonyms=model1.expandPrefix(list1[0]);

将其更改为 1 并删除 model1.expandPrefix() 调用,如果您想要纯字符串文字:

            synonyms=list1[1];

为了跳过无效行(没有制表符),在split() 调用之后更改代码。检查list1数组的长度:

            String[] list1 = line1.split("\t");
            if (list1.length < 2) continue;

您还从输入中读取两行而不是一行。

更改此代码:

    while ((bufferedReader1.readLine()) != null) {
            line1 = bufferedReader1.readLine();

到这里:

    while ((line1 = bufferedReader1.readLine()) != null) {

【讨论】:

  • 我以前做过,但同样没有用。我想我做错了什么是在这个语法本身 --> {synonyms=model1.expandPrefix(list1[1])},我想不出正确的
  • @Ghas 我还会删除model1.expandPrefix() 电话,请参阅我的编辑...
  • 但是当我改变 list1[0];到 list1[1] 它显示一个错误。
  • @Ghas 什么错误?你能发布完整的消息和堆栈跟踪吗?
  • @Ghas 好的,我明白了:ArrayIndexOutOfBoundsException - 这意味着输入中有一行没有制表符 (\t) 字符。您必须在代码中删除或跳过它 - 我将在我的答案中进行另一次编辑...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多