最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Java把文本內(nèi)容轉(zhuǎn)換成網(wǎng)頁(yè)的實(shí)現(xiàn)方法分享

 更新時(shí)間:2015年11月18日 09:00:36   作者:march alex  
這篇文章主要介紹了使用Java把文本內(nèi)容轉(zhuǎn)換成網(wǎng)頁(yè)的實(shí)現(xiàn)方法分享,利用到了Java中的文件io包,需要的朋友可以參考下

先以簡(jiǎn)單的文件讀寫實(shí)現(xiàn)為基礎(chǔ),F(xiàn)ileHelper類中的readFile方法用于讀取文件內(nèi)容,writeFile方法用于向文件中寫入內(nèi)容。

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;



public class FileHelper {
  public 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 FileWriter(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");
  }
}

然后在FileHelper類的基礎(chǔ)上寫一個(gè)WebpageMaker類,其createPage方法用于將特定文件中的內(nèi)容生成在特定的網(wǎng)頁(yè)中。
其中如果要插入代碼可以將代碼加入中。

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;
}

相關(guān)文章

  • Spring Boot 表單驗(yàn)證篇

    Spring Boot 表單驗(yàn)證篇

    在表單提交的時(shí)候,我們需要進(jìn)行驗(yàn)證。下面通過本篇文章給大家介紹Spring Boot 表單驗(yàn)證篇,需要的朋友可以參考下
    2017-08-08
  • 解決idea web 配置相對(duì)路徑問題

    解決idea web 配置相對(duì)路徑問題

    這篇文章主要介紹了idea web 配置相對(duì)路徑問題的解決方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-06-06
  • java實(shí)現(xiàn)Dijkstra最短路徑算法

    java實(shí)現(xiàn)Dijkstra最短路徑算法

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)Dijkstra最短路徑算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • java題解LeetCode20.有效的括號(hào)

    java題解LeetCode20.有效的括號(hào)

    這篇文章主要為大家介紹了java題解LeetCode20.有效的括號(hào)示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • 熟悉maven:使java開發(fā)變得更高效

    熟悉maven:使java開發(fā)變得更高效

    在日常的開發(fā)過程中,maven是很常見的項(xiàng)目構(gòu)建工具。maven可以極大的提高我們的開發(fā)效率,幫助我們簡(jiǎn)化開發(fā)過程中一些解決依賴和項(xiàng)目部署的相關(guān)問題,所以學(xué)習(xí)掌握maven的相關(guān)知識(shí)是非常有必要的
    2021-06-06
  • SpringCloud使用Feign實(shí)現(xiàn)遠(yuǎn)程調(diào)用流程詳細(xì)介紹

    SpringCloud使用Feign實(shí)現(xiàn)遠(yuǎn)程調(diào)用流程詳細(xì)介紹

    OpenFeign源于Netflix的Feign,是http通信的客戶端。屏蔽了網(wǎng)絡(luò)通信的細(xì)節(jié),直接面向接口的方式開發(fā),讓開發(fā)者感知不到網(wǎng)絡(luò)通信細(xì)節(jié)。所有遠(yuǎn)程調(diào)用,都像調(diào)用本地方法一樣完成
    2023-02-02
  • SpringBoot整合定時(shí)任務(wù)之實(shí)現(xiàn)Scheduled注解的過程(一個(gè)注解全解決)

    SpringBoot整合定時(shí)任務(wù)之實(shí)現(xiàn)Scheduled注解的過程(一個(gè)注解全解決)

    這篇文章主要介紹了SpringBoot整合定時(shí)任務(wù)之實(shí)現(xiàn)Scheduled注解的過程(一個(gè)注解全解決),本文通過使用場(chǎng)景分析給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • SpringBoot2.1.3修改tomcat參數(shù)支持請(qǐng)求特殊符號(hào)問題

    SpringBoot2.1.3修改tomcat參數(shù)支持請(qǐng)求特殊符號(hào)問題

    最近遇到一個(gè)問題,比如GET請(qǐng)求中,key,value中帶有特殊符號(hào),請(qǐng)求會(huì)報(bào)錯(cuò)。接下來通過本文給大家分享解決SpringBoot2.1.3修改tomcat參數(shù)支持請(qǐng)求特殊符號(hào) ,需要的朋友可以參考下
    2019-05-05
  • Springboot轉(zhuǎn)發(fā)重定向?qū)崿F(xiàn)方式解析

    Springboot轉(zhuǎn)發(fā)重定向?qū)崿F(xiàn)方式解析

    這篇文章主要介紹了springboot轉(zhuǎn)發(fā)重定向?qū)崿F(xiàn)方式解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Java實(shí)現(xiàn)讀取Jar文件屬性的方法詳解

    Java實(shí)現(xiàn)讀取Jar文件屬性的方法詳解

    這篇文章主要為大家詳細(xì)介紹了如何利用Java語(yǔ)言實(shí)現(xiàn)讀取Jar文件屬性的功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-08-08

最新評(píng)論

巩留县| 资源县| 尤溪县| 鹤岗市| 枣庄市| 渑池县| 涞源县| 平顺县| 北海市| 茌平县| 和林格尔县| 日土县| 松滋市| 丘北县| 泰来县| 囊谦县| 巴林左旗| 满洲里市| 嘉峪关市| 漳浦县| 罗平县| 深州市| 高清| 鹤壁市| 阿鲁科尔沁旗| 呼图壁县| 嘉黎县| 邻水| 布尔津县| 通化县| 巧家县| 新干县| 新闻| 武陟县| 淄博市| 黄浦区| 蓬莱市| 永仁县| 乐至县| 嘉鱼县| 台安县|