`
babyjoycry
  • 浏览: 153635 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

java url 字符转义

阅读更多
web 开发中通问好(?)方式在浏览器地址栏中传值时。浏览器是通过“&”来区分问号后的参数个数的。如果出现传值参数中带有“&”时,在接受页面就会出现错误,类似如下请求路径:/next.jsp?param1=hendhs89& furej & param2=sss

参数param1中含有转义字符“&” ,这样会导致被请求页的参数接收错误。

在传值前 通过 java.net.URLEncoder.encode(param1) 编码处理。

以下为我的代码:
URL url = new URL(urlstr);
		URLConnection conn = url.openConnection();
		// 向链接里输出内容
		conn.setDoOutput(true);
		// 获得连接输出流
		OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream());
		// 自定义要写入的参数及数据,并进行了编码处理
		String str ="url="+java.net.URLEncoder.encode(one.get(0),"UTF-8")+"&&ip="+one.get(1)+"&&httpstatus="+one.get(2)+"&&contenttype="+java.net.URLEncoder.encode(one.get(3),"UTF-8")+"&&charset="+java.net.URLEncoder.encode(one.get(4),"UTF-8")+"&&pattern="+java.net.URLEncoder.encode(one.get(5),"UTF-8")+"&&headers="+java.net.URLEncoder.encode(one.get(6),"UTF-8")+"&&html="+java.net.URLEncoder.encode(one.get(7),"UTF-8");		
		// 把数据写入
		System.out.println();
		out.write(str);
		out.flush();
		out.close();

		// 返回信息
		BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
		String line=null;
		while((line=reader.readLine())!=null){
			System.out.println(line);
		}
分享到:
评论

相关推荐

    java中文和特殊符号url转换

    用于中文和特殊符号路径转换,可以读取中文等一系列特殊符号

    两种方法解决javascript url post 特殊字符转义 + & #

    最近在用url 传特殊字符的时候发现数据丢失了。 其实不是丢失,比如 ‘+’它会当成连接字符来处理了。 一、替换成16进制字符,在这列几个常用的转换 + 空格 / ? % & = # + / ? % & &3D # 复制代码 代码...

    filter对request请求拦截,对请求参数进行修改

    除了添加两个JsFilter.java和GetHttpServletRequestWrapper.java之外,需要在web.xml添加对应的配置。 <!-- 特殊字符过滤 --> <filter-name>sqlFilter <filter-class>weixin.idea.waiting.cq.controller.Js...

    java防止xss注入

    解决方案是对request请求的parameter 参数做过滤与字符转义

    java 正则表达式

    下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为:字符 说明 \将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,“n”匹配字符“n”。“\n”匹配换行符。序列“\\”匹配“\”,“\(”...

    一个java正则表达式工具类源代码.zip(内含Regexp.java文件)

    3 匹配匹配并提取url ; 4 匹配并提取http ; 5.匹配日期 6 匹配电话; 7 匹配身份证 8 匹配邮编代码 9. 不包括特殊字符的匹配 (字符串中不包括符号 数学次方号^ 单引号' 双引号" 分号; 逗号, 帽号: 数学减号- 右尖...

    java基础入门教程

    第 一 章 Java概 述 § 1.1 Java语 言 出 现 的 背景 、 影 响 及 应 用 前 景 一 、 背 景 最 近 一 年 多 来 ,在 Internet上 出 现 的 特 别 吸 引 人 的 事 件 就是 Ja va语 言 和 用 Java编 写 的 浏 览 器...

    Java-PHP-C#

    转义符号除了用于分隔符外还可以执行特殊字符,全部由字母构成的特殊字符都需要"\"来转义,比如"\d"代表全体数字。 4 正则表达式的特殊字符: 正则表达式中的特殊字符分为元字符、定位字符等等。 元字符是...

    Java核心技术II(第8版)

    4.5.3 SQL转义 4.5.4 多结果集 4.5.5 获取自动生成键 4.6 可滚动和可更新的结果集 4.6.1 可滚动的结果集 4.6.2 可更新的结果集 4.7 行集 4.7.1 被缓存的行集 4.8 元数据 4.9 事务 4.9.1 保存点 4.9.2 批量更新 4.9.3...

    java解惑 书pdf精简版

    谜题14:转义字符的溃败 谜题15:令人晕头转向的Hello 谜题16:行打印程序 谜题17:嗯? 谜题18:字符串奶酪 谜题19:漂亮的火花(块注释符) 谜题20:我的类是什么 谜题21:我的类是什么?镜头2 谜题22:uRL的愚弄 ...

    预防XSS攻击和SQL注入XssFilter

    一、什么是XSS攻击 XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。...攻击者利用XSS漏洞旁路掉访问... <url-pattern>/*</url-pattern> </filter-mapping>

    一个开源的Java基础工具包

    3、com.baijob.commonTools.net.HtmlUtil HTML工具类,暂时只提供特殊字符转义 4、com.baijob.commonTools.net.SocketUtil socket工具类。 isUsableLocalPort() 检测本地某个端口是否可用(可用是指没有被其他程序...

    Java解惑(谜题)CHM中英文双版本

    谜题14:转义字符的溃败 谜题15:令人晕头转向的Hello 谜题16:行打印程序 谜题17:嗯? 谜题18:字符串奶酪 谜题19:漂亮的火花(块注释符) 谜题20:我的类是什么? 谜题21:我的类是什么?第2幕 谜题22:...

    java 谜题95

    互换内容 11 谜题8:Dos Equis 13 谜题9:半斤 14 谜题10:八两 15 Java谜题2——字符谜题 16 谜题11:最后的笑声 16 谜题12:ABC 18 谜题13:畜牧场 19 谜题14:转义字符的溃败 21 谜题...

    常用编码(Unicode,UTF-8,GBK)转换工具

    用于常用编码转换,包括BREW、JAVA等语言UNICODE字符串定义格式,网页编码,GBK及UTF-8的URL编码等

    Java解惑[高清].pdf

    谜题14:转义字符的溃败 31 谜题15:令人晕头转向的Hello 33 谜题16:行打印程序 35 谜题17:嗯? 37 谜题18:字符串奶酪 39 谜题19:漂亮的火花(块注释符) 41 谜题20:我的类是什么 43 谜题21:我的类是什么...

    ThinkPHP+工具箱源码

    JSON格式化、压缩转义、生成C#、Java、Go实体类、SQL转Java实体类、XML和JSON互转、Excel/CSV转JSON、JSON转Excel/CSV、JSON和GET参数互转、JSON转YAML、HTML/CSS/JS格式化/压缩、加解密编码、MD5加密、URL编码、...

    正则表达式

    由于某些字符类非常常用,所以JavaScript的正则表达式语法包含一些特殊字符和转义序列来表示这些常用的类.例如, \s 匹配的是空格符,制表符和其它空白符, \s 匹配的则是空白符之外的任何字符. 正则表灰式的字符类 ...

    ORACLE,mysql,sqlserver,sybase数据库装文本软件

    使用方法: java -jar lynload.jar,即可看到中文命令行参数(unix下需设置gbk字符集环境才能看中文,没gbk环境不能看中文,但不影响导入数据)。 特色: 1.同时支持多个数据库. 2.支持任意字符串作为列分隔符,什么...

    正则表达式经典实例.pdf

    5.14 对正则表达式元字符进行转义 第6章 数字 6.1 整数 6.2 十六进制数字 6.3 二进制数 6.4 删除前导 6.5 位于某个特定范围之内的整数 6.6 在某个特定范围之内的十六进制数 6.7 浮点数 6.8 含有千位分隔符的数 6.9 ...

Global site tag (gtag.js) - Google Analytics