import java.util.*; import java.io.*; /** * A simple conveience class for taking care of drawing * static HTML pages or static HTML pages with a few simple * tags. */ public class Template { String template; public Template(String filename) throws IOException { String line; StringBuffer complete = new StringBuffer(); BufferedReader reader = new BufferedReader(new FileReader(filename)); while((line = reader.readLine()) != null) { complete.append(line); complete.append("\n"); } reader.close(); template = complete.toString(); } public void substitute(String tag, String replacement) { substitute(tag, replacement, false); } public void substitute(String tag, int replacement) { substitute(tag, String.valueOf(replacement), false); } public void substitute(String tag, double replacement) { substitute(tag, String.valueOf(replacement), false); } public void substitute(String tag, int replacement, boolean all) { substitute(tag, String.valueOf(replacement), all); } public void substitute(String tag, double replacement, boolean all) { substitute(tag, String.valueOf(replacement), all); } public void substitute(String tag, String replacement, boolean all) { String fulltag = "[" + tag + "]"; int tagIndex = template.indexOf(fulltag); while (tagIndex != -1) { template = template.substring(0, tagIndex) + replacement + template.substring(tagIndex + fulltag.length()); if (!all) break; tagIndex = template.indexOf(fulltag); } } public String toString() { return template; } }