import javax.xml.parsers.*; import org.xml.sax.helpers.*; import org.xml.sax.*; import java.util.HashMap; import java.io.*; public class JSAX extends DefaultHandler { public static void main(String args[]) { if (args.length != 1) { System.err.println("Usage: java JSAX "); return; } JSAX j = new JSAX(); j.parse(args[0]); } private HashMap m_weekDayNames; private boolean m_displayText; public JSAX() { m_weekDayNames = new HashMap(); m_weekDayNames.put("sunday", "Sunday"); m_weekDayNames.put("monday", "Monday"); m_weekDayNames.put("tuesday", "Tuesday"); m_weekDayNames.put("wednesday", "Wednesday"); m_weekDayNames.put("thursday", "Thursday"); m_weekDayNames.put("friday", "Friday"); m_weekDayNames.put("saturday", "Saturday"); m_displayText = false; } public void parse(String file) { printPre(System.out); try { SAXParserFactory spf = SAXParserFactory.newInstance(); SAXParser sp = spf.newSAXParser(); sp.parse(file, this); } catch (Exception e) { System.out.println(e.getMessage()); } printPost(System.out); } private void printPre(PrintStream out) { out.println(""); out.println(""); out.println("Daily Planner"); out.println(""); out.println(""); out.println("\n"); } private void printPost(PrintStream out) { out.println("
Daily Planner
 AMPM
\n\n"); } public void startElement(String uri, String localName, String qName, Attributes attrs) { // System.out.println("In " + qName); if (m_weekDayNames.containsKey(qName)) { System.out.print(""); System.out.print(m_weekDayNames.get(qName)); System.out.print(""); } else if (qName.equals("am")) { } } public void endElement(String uri, String localname, String qName) { if ( } public void characters(char ch[], int start, int length) { String content = new String(ch, start, length).trim(); System.out.println("characters: " + content); } }