- 浏览: 97506 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
jyjsjd:
请教博主这个ChineseTokenizer()你是怎么写的, ...
使用WVTool进行文本分类 -
superclay:
能不能发个indexwriter indexsearch ...
结合ehcache缓存对lucene使用单例模式搜索 -
strayly:
我采用和ehcache缓存结合使用单例模式
使用ehcache ...
lucene搜索优化(转)
代码来源于网络
/** * js编转码java实现类. * * @author 网上抄的 */ public class Escape { /** The Constant hex. */ private final static String[] hex = { "00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "0A", "0B", "0C", "0D", "0E", "0F", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "1A", "1B", "1C", "1D", "1E", "1F", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "2A", "2B", "2C", "2D", "2E", "2F", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "3A", "3B", "3C", "3D", "3E", "3F", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "4A", "4B", "4C", "4D", "4E", "4F", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "5A", "5B", "5C", "5D", "5E", "5F", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "6A", "6B", "6C", "6D", "6E", "6F", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "7A", "7B", "7C", "7D", "7E", "7F", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "8A", "8B", "8C", "8D", "8E", "8F", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "9A", "9B", "9C", "9D", "9E", "9F", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "AA", "AB", "AC", "AD", "AE", "AF", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "BA", "BB", "BC", "BD", "BE", "BF", "C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "C8", "C9", "CA", "CB", "CC", "CD", "CE", "CF", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "DA", "DB", "DC", "DD", "DE", "DF", "E0", "E1", "E2", "E3", "E4", "E5", "E6", "E7", "E8", "E9", "EA", "EB", "EC", "ED", "EE", "EF", "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "FA", "FB", "FC", "FD", "FE", "FF" }; /** The Constant val. */ private final static byte[] val = { 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F }; /** * Escape. * * @param s the s * * @return the string */ /** * 编码 * * @param s * @return */ public static String escape(String s) { if (s!=null){ StringBuffer sbuf = new StringBuffer(); int len = s.length(); for (int i = 0; i < len; i++) { int ch = s.charAt(i); if ('A' <= ch && ch <= 'Z') { sbuf.append((char) ch); } else if ('a' <= ch && ch <= 'z') { sbuf.append((char) ch); } else if ('0' <= ch && ch <= '9') { sbuf.append((char) ch); } else if (ch == '-' || ch == '_' || ch == '.' || ch == '!' || ch == '~' || ch == '*' || ch == '\'' || ch == '(' || ch == ')') { sbuf.append((char) ch); } else if (ch <= 0x007F) { sbuf.append('%'); sbuf.append(hex[ch]); } else { sbuf.append('%'); sbuf.append('u'); sbuf.append(hex[(ch >>> 8)]); sbuf.append(hex[(0x00FF & ch)]); } } return sbuf.toString(); } return null; } /** * Unescape. * * @param s the s * * @return the string */ /** * 解码 说明:本方法保证 不论参数s是否经过escape()编码,均能得到正确的“解码”结果 * * @param s * @return */ public static String unescape(String s) { if (s!=null){ StringBuffer sbuf = new StringBuffer(); int i = 0; int len = s.length(); while (i < len) { int ch = s.charAt(i); if ('A' <= ch && ch <= 'Z') { sbuf.append((char) ch); } else if ('a' <= ch && ch <= 'z') { sbuf.append((char) ch); } else if ('0' <= ch && ch <= '9') { sbuf.append((char) ch); } else if (ch == '-' || ch == '_' || ch == '.' || ch == '!' || ch == '~' || ch == '*' || ch == '\'' || ch == '(' || ch == ')') { sbuf.append((char) ch); } else if (ch == '%') { int cint = 0; if ('u' != s.charAt(i + 1)) { cint = (cint << 4) | val[s.charAt(i + 1)]; cint = (cint << 4) | val[s.charAt(i + 2)]; i += 2; } else { cint = (cint << 4) | val[s.charAt(i + 2)]; cint = (cint << 4) | val[s.charAt(i + 3)]; cint = (cint << 4) | val[s.charAt(i + 4)]; cint = (cint << 4) | val[s.charAt(i + 5)]; i += 5; } sbuf.append((char) cint); } else { sbuf.append((char) ch); } i++; } return sbuf.toString(); } return null; } }
发表评论
-
pyspark在windows下java.net.SocketException: Connection reset by peer 错误
2016-12-05 16:12 2184pyspark在windows加载数据集 训练模型出现 以下错 ... -
在eclipse上搭建spark的java开发环境
2016-12-05 09:52 906首先安装好spark后 设置环境变量SPARK_HOME=d: ... -
KNN(转)
2016-08-12 13:19 496import java.util.ArrayList; im ... -
ChineseTokenizer implements WVTTokenizer, TokenEnumeration
2016-08-12 13:19 373package text_category; impor ... -
文件系统不同步问题resource is out of sync with the file system的解决办法
2010-06-24 10:21 1027在eclipse中,启动run on server时报错: R ... -
Heritrix源码在Eclipse中的配置
2010-05-17 15:44 911首先下载Heritrix 可以到SourceForge.ne ... -
Berkeley DB Java Edition使用中EnvironmentConfig的配置介绍
2010-04-24 18:46 2143在使用bdb je时要先创建Environment,Envir ... -
对Berkeley DB JE在web中使用的一点点经验
2010-04-18 19:16 935以前我是把缓存写成xml文件,分目录存储 现在改用bdb 通过 ... -
禁止页面被缓存的方法
2010-04-07 14:23 683今天用到,突然发现自己不会写,网上找了一下,保存到自己blog ... -
java实现全角字符转半角字符
2010-04-05 13:54 1585public static final Str ... -
Java将Unix时间戳转换成普通日期
2010-03-29 09:51 2105public String TimeStampDate(S ... -
Java日期格式化及其使用例子
2010-03-29 09:45 5511 SimpleDateFormat担当重任,怎样格式化都行 ... -
获取一个字符串在另个字符串中出现的所有位置
2010-03-24 09:33 1084public class StringTest { ... -
tomcat设置为大内存后不能启动
2010-03-22 11:27 1228tomcat设置为3g内存多后不能启动,查了一些资料,没有找到 ...
相关推荐
乱码,乱码,头大,烦,话说设置Tomcat后可以解决,但有的时候不管用了,这时,我们可以考虑转码方式不直接传中文,在js里用escape转码,记得需要用两次,如... /** * js编转码java实现类. * * @author yangjinde */ pu
在Java中,有`java.net.URLEncoder`类;在PHP中,可以使用`htmlspecialchars`函数等。这些函数和方法能帮助开发者在代码中自动处理HTML转码,确保输出的内容是安全的。 除了基本的转码,还有更高级的概念,比如HTML...
在Java开发中,遇到中文乱码问题是一种常见的挑战,特别...无论是通过JavaScript编码、Java服务器端解码,还是调整服务器配置,关键在于确保字符集的正确转换。通过上述方法,可以有效地避免和解决URL中文乱码的问题。
JavaScript中有三个与编码相关的函数:`escape()`、`encodeURI()`和`encodeURIComponent()`。其中,`encodeURI()`是推荐用来编码URI的,因为它遵循UTF-8编码且不会对一些特殊字符如`!`, `@`, `#`, `$`, `&`, `*`, `...
JavaScript提供了多种方法来实现字符编码的转换。例如,可以将中文汉字转换为Unicode编码,反之亦然。在JS中,可以通过以下方式实现: - **中文汉字转Unicode**:通过遍历字符串中的每个字符,获取其Unicode编码,...
在上述给出的内容中,涉及的JavaScript代码片段展示了如何实现字符串中Unicode编码的转换。代码利用了JavaScript的字符串处理函数,如`replace()`和`String.fromCharCode()`,来完成转换。下面将详细解析代码的各...
XSS攻击通常通过在网页中插入恶意JavaScript代码实现,当用户访问这些被篡改的页面时,恶意脚本会在用户的浏览器环境中执行。攻击方式包括存储型XSS、反射型XSS和DOM型XSS,其中存储型和反射型XSS主要涉及服务器端的...
当使用`dataUrl`方式提交数据时(即通过字符串拼接的方式设置请求体),无论前台使用哪种编码方式(如`encodeURI`、`encodeURIComponent`或`escape`)对中文进行转码,在后台接收到的仍然是乱码。 **解决方法**: -...