Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

XMLUtil.java

00001 package edu.virtualschool.jwaa.xml;
00002 
00003 import java.io.IOException;
00004 import java.io.Reader;
00005 import java.io.StringReader;
00006 
00007 import edu.virtualschool.jwaa.Fault;
00008 import edu.virtualschool.jwaa.IOFault;
00009 
00017 public class XMLUtil
00018 {
00019   public static String escape(String string) throws Fault
00020   {
00021     StringReader reader = new StringReader(string);
00022     return escape(reader);
00023   }
00024   public static String escape(Reader is) throws Fault
00025   {
00026     StringBuffer buf = new StringBuffer();
00027     try
00028     {
00029       for (int c = is.read(); c != -1; c = is.read())
00030       {
00031         switch (c)
00032         {
00033           case '&' :
00034             buf.append("&");
00035             break;
00036           case '<' :
00037             buf.append("&lt;");
00038             break;
00039           case '>' :
00040             buf.append("&gt;");
00041             break;
00042           case '\t':
00043             buf.append("  "); // two spaces
00044             break;
00045           default :
00046             buf.append((char) c);
00047             break;
00048         }
00049       }
00050       return buf.toString();
00051     }
00052     catch (IOException e)
00053     {
00054       throw new IOFault(e, e);
00055     }
00056   }
00057 }