Jena库无法将输出写入外部RDF/XML文件

3

我在使用jena库的写入方法时遇到了问题。以下代码应该将输出写入外部文件,但实际上没有这样做。

import com.hp.hpl.jena.rdf.model.*;
import com.hp.hpl.jena.vocabulary.*;
import com.hp.hpl.jena.rdf.model.impl.ModelCom;


public class Tutorial04 extends Object {

// some definitions
static String tutorialURI  = "http://hostname/rdf/tutorial/";
static String briansName   = "Brian McBride";
static String briansEmail1 = "brian_mcbride@hp.com";
static String briansEmail2 = "brian_mcbride@hpl.hp.com";
static String title        = "An Introduction to RDF and the Jena API";
static String date         = "23/01/2001";

@SuppressWarnings("unused")
public static void main (String args[]) {

    // some definitions
    String personURI    = "http://somewhere/JohnSmith";
    String givenName    = "John";
    String familyName   = "Smith";
    String fullName     = givenName + " " + familyName;
    // create an empty model
    Model model = ModelFactory.createDefaultModel();

    // create the resource
    //   and add the properties cascading style
    Resource johnSmith
      = model.createResource(personURI)
             .addProperty(VCARD.FN, fullName)
             .addProperty(VCARD.N,
                          model.createResource()
                               .addProperty(VCARD.Given, givenName)
                               .addProperty(VCARD.Family, familyName));

    // now write the model in XML form to a file
  //  model.write(System.out, "RDF/XML");
    model.write(System.out,"RDF/XML");
}

}

1个回答

14

你有:

model.write(System.out,"RDF/XML");

该指令要求将模型内容写入标准输出,即不写入任何命名文件。如果要将模型内容写入文件,则需要指定文件名称:

String fileName = "your_file_name_here.rdf";
FileWriter out = new FileWriter( fileName );
try {
    model.write( out, "RDF/XML-ABBREV" );
}
finally {
   try {
       out.close();
   }
   catch (IOException closeException) {
       // ignore
   }
}

谢谢Ian :) 这很有帮助。 另外,我在我的毕业项目中还需要你的一些帮助。你也了解Jena图书馆吗? - Faisal Sarfraz
很高兴能帮到你。如果你需要关于Jena的其他帮助,可以继续在这里提问或者在Jena用户组发布消息:请参阅http://jena.apache.org/help_and_support/index.html - Ian Dickinson
嗨,伊恩。请问我能拿到你的电子邮件地址吗?本周我需要在Jena的一些任务上寻求帮助。 - Faisal Sarfraz
1
嗨,Faisal,发送Jena问题的最佳地点是我在上一条评论中提到的Jena用户列表。这样你就可以得到整个社区的帮助,而不仅仅是一个人。此外,您的问题及其答案可能会帮助其他人。 - Ian Dickinson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接