march alex's blog
          hello,I am march alex
          posts - 52,comments - 7,trackbacks - 0
          之前寫了一個FileHelper類用于實現文件的讀取和寫入。
          這次在原來的基礎上寫了一個WebpageMaker類,其createPage方法用于將特定文件中的內容生成在特定的網頁中。
          其中如果要插入代碼可以將代碼加入中。
          import java.util.StringTokenizer;


          public class WebpageMaker {
              public static String initBegin() {
                  String s = "<!doctype html><html><head><title></title></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 inputfilename, 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 += "&quot;";
                          else if(c == '&') ans += "&amp;";
                          else if(c == '<') ans += "&lt;";
                          else if(c == '>') ans += "&gt;";
                          else if(c == ' ') ans += "&nbsp;";
                          else if(c == '\t') ans += "&nbsp;&nbsp;&nbsp;&nbsp;";
                          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://test.txt", "D://test.html");
              }
          }

          樣例:
          輸入文件:test.txt
          hello world!
          大家好:)
          #include 
          int main() {
              printf("hello world!\n");
              return 0;
          }
          輸出文件:test.html
          <!doctype html><html><head><title></title></head><body>
          hello world!<br />
          大家好:)<br />
          <pre style="background-color:aliceblue">#include <stdio.h>
          int main() {
              printf("hello world!\n");
              return 0;
          }</pre><br />
          </body></html>
          
          效果如下:
          hello world!
          大家好:)
          #include <stdio.h>
          int main() {
              printf("hello world!\n");
              return 0;
          }
          posted on 2015-03-06 16:36 marchalex 閱讀(368) 評論(2)  編輯  收藏 所屬分類: java小程序

          FeedBack:
          # re: Java根據文本內容生成網頁
          2015-03-06 23:52 | gaochang
          servlet?  回復  更多評論
            
          # re: Java根據文本內容生成網頁
          2015-03-07 00:10 | marchalex
          @gaochang
          暫時還不會servlet,以后有時間可能會研究吧:)  回復  更多評論
            
          主站蜘蛛池模板: 岳西县| 青海省| 金坛市| 九寨沟县| 冕宁县| 辽源市| 云龙县| 江阴市| 盐池县| 永清县| 崇礼县| 山西省| 砀山县| 安化县| 平顶山市| 郓城县| 德州市| 南乐县| 黑龙江省| 余姚市| 微博| 林周县| 建德市| 鞍山市| 西昌市| 大丰市| 久治县| 龙南县| 师宗县| 平和县| 上林县| 通榆县| 南宁市| 嘉峪关市| 阿巴嘎旗| 仙游县| 新郑市| 民县| 万年县| 乐平市| 进贤县|