⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 encoder.java

📁 又一个课程设计 简易 JSP 论坛 功能较简单的那种, 界面上模仿了 Discuz JSP 本来就学的不行, 只是尽量实现了 MVC
💻 JAVA
字号:
package cn.ialvin.web;

import java.io.UnsupportedEncodingException;
import java.text.CharacterIterator;
import java.text.StringCharacterIterator;

public class Encoder {
	public static void main(String[] args) {
		System.out.println((int)']');
	}
	
	
	public static String encodeHTML(String s) {
		if (s == null) return "";
		StringBuffer stringbuffer = new StringBuffer();
        int j = s.length();
        for(int i = 0; i < j; i++)
        {
            char c = s.charAt(i);
            switch(c)
            {
            case 60: stringbuffer.append("&lt;"); break;
            case 62: stringbuffer.append("&gt;"); break;
            case 38: stringbuffer.append("&amp;"); break;
            case 34: stringbuffer.append("&quot;"); break;
            case 169: stringbuffer.append("&copy;"); break;
            case 174: stringbuffer.append("&reg;"); break;
            case 165: stringbuffer.append("&yen;"); break;
            case 8364: stringbuffer.append("&euro;"); break;
            case 8482: stringbuffer.append("&#153;"); break;
            /*case 13:
              if(i < j - 1 && s.charAt(i + 1) == 10) {
            	  stringbuffer.append("<br />");
            	  i++;
              }
              break;
            case 32:
              if(i < j - 1 && s.charAt(i + 1) == ' ') {
                  stringbuffer.append(" &nbsp;");
                  i++;
                  break;
                }*/
            default:
                stringbuffer.append(c);
                break;
            }
        }
      return new String(stringbuffer.toString());
	}

	public static String escape(String src) {
		if (src == "") return "";
		int i;
		char j;
		StringBuffer tmp = new StringBuffer();
		tmp.ensureCapacity(src.length() * 6);
		for (i = 0; i < src.length(); i++) {
			j = src.charAt(i);
			if (Character.isDigit(j) || Character.isLowerCase(j)
					|| Character.isUpperCase(j))
				tmp.append(j);
			else if (j < 256) {
				tmp.append("%");
				if (j < 16)
					tmp.append("0");
				tmp.append(Integer.toString(j, 16));
			} else {
				tmp.append("%u");
				tmp.append(Integer.toString(j, 16));
			}
		}
		return tmp.toString();
	}

	public static String unEscape(String src) {
		if (src == null) return "";
		StringBuffer tmp = new StringBuffer();
		tmp.ensureCapacity(src.length());
		int lastPos = 0, pos = 0;
		char ch;
		while (lastPos < src.length()) {
			pos = src.indexOf("%", lastPos);
			if (pos == lastPos) {
				if (src.charAt(pos + 1) == 'u') {
					ch = (char) Integer.parseInt(src
							.substring(pos + 2, pos + 6), 16);
					tmp.append(ch);
					lastPos = pos + 6;
				} else {
					ch = (char) Integer.parseInt(src
							.substring(pos + 1, pos + 3), 16);
					tmp.append(ch);
					lastPos = pos + 3;
				}
			} else {
				if (pos == -1) {
					tmp.append(src.substring(lastPos));
					lastPos = src.length();
				} else {
					tmp.append(src.substring(lastPos, pos));
					lastPos = pos;
				}
			}
		}
		return tmp.toString();
	}

	public static String encodeURIComponent(String src) {
		return Encoder.encodeURIComponent(src, "UTF-8");
	}

	public static String encodeURIComponent(String src, String charset) {
		if (src == null)
			return "";
		try {
			return java.net.URLEncoder.encode(src, charset).replaceAll("\\+", "%20");
		} catch (UnsupportedEncodingException e) {
			return src;
		}
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -