posts - 4,comments - 30,trackbacks - 0

          public class ToHtml {
          ?/** HTMLエンコードが必要な文字 **/
          ?static char[] htmlEncChar = {'&', '"', '<', '>'};
          ?/** HTMLエンコードした文字列 **/
          ?static String[] htmlEncStr = {"&amp;", "&quot;", "&lt;", "&gt;"};

          ?/**
          ? * HTMLエンコード処理。
          ? *?? &,",<,>の置換
          ?**/
          ?
          ?public static String encode (String strIn) {
          ??if (strIn == null) {
          ???return(null);
          ???? }

          ???? // HTMLエンコード処理
          ???? StringBuffer strOut = new StringBuffer(strIn);
          ???? // エンコードが必要な文字を順番に処理
          ???? for (int i = 0; i < htmlEncChar.length; i++) {
          ???? ?// エンコードが必要な文字の検索
          ???? ?int idx = strOut.toString().indexOf(htmlEncChar[i]);

          ???? ?while (idx != -1) {
          ???? ??// エンコードが必要な文字の置換
          ???? ??strOut.setCharAt(idx, htmlEncStr[i].charAt(0));
          ???? ??strOut.insert(idx + 1, htmlEncStr[i].substring(1));

          ???? ??// 次のエンコードが必要な文字の検索
          ???? ??idx = idx + htmlEncStr[i].length();
          ???? ??idx = strOut.toString().indexOf(htmlEncChar[i], idx);
          ???? ?}
          ???? }
          ???? return(strOut.toString());
          ?}
          }



          <%@ page contentType="text/html; charset=Shift_JIS" %>
          <%@ page import="renesas.common.util.*" %>

          <html>
          ?<head>
          ??<title>HTMLエンコードのテスト</title>
          ?</head>
          <body>

          <h1>HTMLエンコードのテスト</h1>

          <form>
          <table>
          ?<tr>
          ??<td> & の付いたデータ</td>
          ??<td><input type="text" value="<%= ToHtml.encode("joe&joe") %>" /></td>
          ?</tr>
          ?<tr>
          ??<td> <> の付いたデータ</td>
          ??<td><input type="text" value="<%= ToHtml.encode("<joe>") %>" /></td>
          ?</tr>
          ?<tr>
          ??<td> " の付いたデータ</td>
          ??<td><input type="text" value="<%= ToHtml.encode("\"joe\"") %>" /></td>
          ?</tr>
          </table>
          </form>

          </body>
          </html>


          posted on 2007-08-10 11:28 蠻哥♂楓 閱讀(272) 評論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 枞阳县| 望奎县| 澄城县| 吴江市| 容城县| 浦县| 嫩江县| 封开县| 崇信县| 新沂市| 靖宇县| 萍乡市| 潍坊市| 济宁市| 双牌县| 浦北县| 都昌县| 新宁县| 瑞金市| 逊克县| 壶关县| 高尔夫| 行唐县| 那坡县| 苍南县| 中西区| 扶绥县| 峨山| 巢湖市| 上思县| 板桥市| 淳安县| 犍为县| 石嘴山市| 兴国县| 宁远县| 新宁县| 锦屏县| 水城县| 海晏县| 铜川市|