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
          主站蜘蛛池模板: 邳州市| 丰台区| 岫岩| 娱乐| 宝兴县| 微博| 林周县| 河津市| 蒙城县| 深州市| 庆云县| 乃东县| 昭苏县| 大悟县| 寻乌县| 保靖县| 南康市| 蒙山县| 卢氏县| 三河市| 红河县| 彭阳县| 香港| 辉南县| 土默特左旗| 南靖县| 时尚| 上杭县| 屏东市| 远安县| 印江| 铅山县| 札达县| 赣榆县| 吐鲁番市| 鄢陵县| 峨眉山市| 铅山县| 兰西县| 临邑县| 夏津县|