Beispielprogramm - Ausgeben der Adjazenzliste



import gabl.export.*;
import gabl.graph.*;
import java.io.*;


class test {
    static void listAdj ( AdjGraph G )
    {
	VertexIterator viter = G.createVertexIterator();
	for (;! viter.atEnd();viter.increment() )
	{
	   System.out.print(G.toString(viter.getVertex()) + ": ");
	   AdjacencyIterator aiter= G.createAdjacencyIterator(viter.getVertex());
	   for (;! aiter.atEnd();aiter.increment() )
	   {
	      System.out.print(G.toString(aiter.getVertex()) + " ");
	   }
	   System.out.println();
	}
    }
    
    public static void main ( String[] argv )
    {
	GraphFactory factory = new GraphFactory();
	File file = new File(argv[0]);
	
	try 
	{
	   GraphBundle bundle = GraphFormatGML.readGraph(new FileInputStream(file), factory);	  
	   AdjGraph graph = (AdjGraph)bundle.getGraph(); 
	   
	   listAdj(graph);
        }
	catch (NoSuchGraphImplementationException e) {
	    System.err.println(e.toString());
	}
	catch (ClassCastException e) {
	    System.err.println("Error: graph has wrong type '" + e.toString() + "'");
	}
	catch (IOException e) {
	    System.err.println("Error: reading file '" + file + "' failed.\n" + e);
	}
    }
}