findimports.java

来自「Semantic Web Ontology Editor」· Java 代码 · 共 108 行

JAVA
108
字号
package org.mindswap.swoop.locality;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.StringWriter;
import java.net.URI;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.mindswap.pellet.debug.utils.Timer;
import org.mindswap.swoop.SwoopModel;
import org.mindswap.swoop.utils.owlapi.CorrectedRDFRenderer;
import org.semanticweb.owl.model.OWLOntology;

public class FindImports {

	SwoopModel swoopModel = new SwoopModel();
	boolean DEBUG = true;
	Map entTest = new HashMap();
	String NEWLINE = System.getProperty("line.separator");
	Timer testTimer;
	String logFile = "";
	List testOnt;
	
public FindImports() throws Exception {
		
		// load ontologies
		this.testOnt = new ArrayList();		
		String loc2 = "C:/ontologies/ontologies32.txt";
        File fi = new File( loc2 );
        StringBuffer contents = new StringBuffer();
        BufferedReader input = null;
        try {
          input = new BufferedReader( new FileReader(fi) );
          String line = null; 
          while (( line = input.readLine()) != null){
        	 if(DEBUG){
        		 System.out.println("Reading Ontology " + line);
        	 }
        	  OWLOntology ont = swoopModel.loadOntology(new URI(line));
              if(!ont.getIncludedOntologies().isEmpty())
            	  testOnt.add(ont);        	
          }
        }
        catch (FileNotFoundException ex) {
          ex.printStackTrace();
        }
        catch (IOException ex){
          ex.printStackTrace();
        }
        finally {
          try {
            if (input!= null) {
              //flush and close both "input" and its underlying FileReader
              input.close();
            }
          }
          catch (IOException ex) {
            ex.printStackTrace();
          }
        }
	           
	    System.out.println("DONE: Ontologies Loaded");
	    
	 }

public List getOntologies() 
{
	return this.testOnt;
}


public static void main(String[] args) {
	try {
		FindImports t = new FindImports();
		List l = t.getOntologies();
		Iterator iter = l.iterator();
		int number = 0;
		while (iter.hasNext()){		
			number = number +1;
			OWLOntology ont = (OWLOntology)iter.next();
			String loc = "C:/ontologies/imports/" + number + ".owl";
			String output;
			StringWriter rdfBuffer = new StringWriter();
			CorrectedRDFRenderer rdfRenderer = new CorrectedRDFRenderer();
			rdfRenderer.renderOntology(ont, rdfBuffer);
			output = rdfBuffer.toString();
			File f = new File(loc);
	        BufferedWriter out = new BufferedWriter(new FileWriter(f));
	        out.write(output);
	        out.close();
			}
	}
	catch (Exception e) {
		e.printStackTrace();
	}		
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?