import java.sql.*; import java.util.Vector; public class MDB2XML { public static void main(String args[]){ if (args.length!=1) { System.err.println("Usage: java MDB2XML filename"); System.exit(1); } try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con = DriverManager.getConnection("jdbc:odbc:MS Access Database;DBQ="+args[0]); DatabaseMetaData dmd = con.getMetaData(); Statement stmt = con.createStatement(); String[] tableTypes = new String[] {"TABLE"}; ResultSet rs = dmd.getTables(null, null, null, tableTypes); ResultSetMetaData rsmd = rs.getMetaData(); Vector tables = new Vector(); int numCols = rsmd.getColumnCount(); String dataField; while(rs.next()){ tables.add(rs.getString(3)); } Vector headers; System.out.println(""); System.out.println(""); for(int i=0; i"+tables.get(i)+""); headers = new Vector(); String sq = "SELECT * FROM "+ tables.get(i); ResultSet rst = stmt.executeQuery(sq); rsmd = rst.getMetaData(); numCols = rsmd.getColumnCount(); for(int j=1; j<=numCols; j++) { headers.add(rsmd.getColumnLabel(j)); } while(rst.next()){ System.out.println(""); for(int j=1; j<=numCols; j++) { System.out.println("<"+headers.get(j-1)+">"+ rst.getString(j)+ ""); } System.out.println(""); } System.out.println(""); } System.out.println(""); }catch(SQLException sqle){ sqle.printStackTrace(); }catch(ClassNotFoundException cnfe){ cnfe.printStackTrace(); } } }