
import org.xml.sax.*;
import java.io.*;
import java.util.*;
import javax.xml.parsers.*;
import org.xml.sax.helpers.*;

public class SimpleSaxParser
extends 	DefaultHandler
{
	public void parse(File afile, String encoding)
	throws Exception
	{
		System.out.println("afile=" + afile.getAbsolutePath() + ", encoding=" + encoding);

		SAXParserFactory pf=SAXParserFactory.newInstance();
		pf.setValidating(false);
		pf.setNamespaceAware(true);

		SAXParser parser=pf.newSAXParser();

		InputSource is = new InputSource(new FileInputStream(afile));

		if( encoding != null )
			is.setEncoding(encoding);
		parser.parse(is, this);
	}


	public static void main(String[] args)
	{
		try
		{
			if( args.length <= 0 )
			{
				System.out.println("java SimpleSaxParser fileName encoding");
				System.exit(0);
			}

			String fname = args[0];
			String encoding = null;

			if( args.length >= 2 )
				encoding = args[1];

			SimpleSaxParser ssp = new SimpleSaxParser();
			ssp.parse(new File(fname),encoding);
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}

}

