First, based on simple file read and write implementation, the readFile method in the FileHelper class is used to read the file content, and the writeFile method is used to write content to the file.
import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;public class FileHelper { public c static String readFile(String filename) throws Exception { BufferedReader reader = new BufferedReader(new FileReader(filename)); String ans = "", line = null; while((line = reader.readLine()) != null){ ans += line + "/r/n"; } reader.close() ; return ans; } public static void writeFile(String content, String filename) throws Exception { BufferedWriter writer = new BufferedWriter(new FileWrit er(filename)); writer.write(content); writer.flush(); writer.close() ; } public static void main(String[] args) throws Exception { String ans = readFile("D://input.txt"); writeFile(ans, "D://output.txt"); }} Then write a WebpageMaker class based on the FileHelper class, and its createPage method is used to generate the content in a specific file in a specific web page.
If you want to insert the code, you can add the code to it.
import java.util.StringTokenizer;public class WebpageMaker { public static String initBegin() { String s = "<!doctype html><html><head><title></t itle></head><body>/r/ n"; return s; } public static String initEnd() { String s = "/r/n</body></html>/r/n"; return s; } public static void createPage(String inputfilen ame, String outputfilename ) throws Exception { String content = FileHelper.readFile(inputfilename); StringTokenizer st = new StringTokenizer(content, "/r/n"); String ans = ""; ans += initBegin(); boolean isCoding = false; while( st.hasMoreElements()) { String s = st.nextToken(); int len = s.length(); for(int i=0;i<len;i++) { if(i+6 <= len && s. substring(i,i+6).equals("<alex>")) { isCoding = true; ans += "<pre style=/"background-color:aliceblue/">"; i += 5; continue; } if(i+7 <= len && s.substring(i,i+7).equals("</alex>")) { isCoding = false; ans += "</pre>"; i += 6 ; continue; } char c = s.charAt(i); if(c == '/"') ans += ""; else if(c == '&') ans += "&"; else if( c == '<') ans += "<"; else if(c == '>') ans += ">"; else if(c == ' ') ans += ""; else if(c == '/t') ans += ""; else ans += c; } if(false == isCoding) ans += "<br />/r/n"; else ans += "/r/n "; } ans += initEnd(); FileHelper.writeFile(ans, outputfilename); } public static void main(String[] args) throws Exception { createPage("D://te st.txt", "D:// test.html"); }} Sample:
Input file: test.txt
hello world! Hello everyone:) #include int main() { printf("hello world!/n"); return 0;} Output file: test.html
<!doctype html><html><head><title></title></head><body>hello world! <br />Hello everyone:)<br /><pre style="background-color:aliceblue">#include <stdio.h>int main() { printf("hello world!/n"); return 0; }</pre><br /></body></html> The effects are as follows:
hello world! Hello everyone:) #include <stdio.h>int main() { printf("hello world!/n"); return 0;}