url中文问题解决方法

java 远程文件url 转为输入流 URL url = new URL(fileUrl); HttpURLConnection conn = (HttpURLConnection)url.openConnection(); //设置超时间为3秒 conn.setConnectTimeout(3*1000); //防止屏蔽程序抓取而返回403错误 conn.setRequestProperty("User-Agent", "Mozi... 阅读详情

使不支持中文URL的JSP服务器支持中文URL(如Tomcat)

package filter;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.net.*;

public class CharacterEncoding implements Filter {
 protected FilterConfig filterConfig = null;
 private String encoding=null;
 
 public void destroy() {
  filterConfig = null;
  encoding=null;
 }

 public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {
  HttpServletRequest req = (HttpServletRequest) request;
  String s = req.getRequestURI();
  String url = URLDecoder.decode(s, "UTF-8");//当IE中Intertnet选项->高级选项->总是以UTF-8发送URL 被选中时。
  int k=url.indexOf("?");
  String file=(k==-1?url:url.substring(0,k));
  File f = new File(filterConfig.getServletContext().getRealPath(file));
  if (f.exists() == false) {
   //以UTF-8发送URL 未被选中时
   url = new String(s.getBytes("ISO-8859-1"), encoding);
   url = URLDecoder.decode(url, encoding);
  }
  filterConfig.getServletContext().getRequestDispatcher(url).forward(req,response);
 }

 public void init(FilterConfig filterConfig) throws ServletException {
  this.filterConfig = filterConfig;
  encoding = filterConfig.getInitParameter("encoding");
 }
}

以上用于JDK1.4,如果用的是JDK1.3,请在上面代码中加入以下方法,并将URLEncoder.decode(...)改成decode(...):

public static String decode(String s, String enc) throws UnsupportedEncodingException {
 boolean needToChange = false;
 StringBuffer sb = new StringBuffer();
 int numChars = s.length();
 int i = 0;
 if (enc.length() == 0) {
  throw new UnsupportedEncodingException("URLDecoder: empty string enc parameter");
 }
 while (i < numChars) {
  char c = s.charAt(i);
  switch (c) {
   case '+':
    sb.append(' ');
    i++;
    needToChange = true;
    break;
   case '%':
    try {
     byte[] bytes = new byte[ (numChars - i) / 3];
     int pos = 0;
     while ( ( (i + 2) < numChars) &&(c == '%')) {
      bytes[pos++] = (byte) Integer.parseInt(s.substring(i + 1, i + 3),16);
      i += 3;
      if (i < numChars) {
       c = s.charAt(i);
      }
     }
     if ( (i < numChars) && (c == '%')) {
      throw new IllegalArgumentException("URLDecoder: Incomplete trailing escape (%) pattern");
     }
     sb.append(new String(bytes, 0, pos, enc));
    }
    catch (NumberFormatException e) {
     throw new IllegalArgumentException("URLDecoder: Illegal hex characters in escape (%) pattern - " + e.getMessage());
    }
    needToChange = true;
    break;
   default:
    sb.append(c);
    i++;
    break;
  }
 }
 return (needToChange ? sb.toString() : s);
}


另外,还要在web.xml文件加入
 CharacterEncoding
filter.CharacterEncoding
encoding
GBK
 CharacterEncoding
/*

解决URL传值中文乱码问题的方法 无论你选择哪种方法,都要确保在发送和接收页面之间进行一致的编码和解码操作,以确保传递的中文参数被正确地处理。除了使用JavaScript内置的encodeURIComponent和decodeURIComponent函数外,还可以使用一些第三方URL编码/解码的库来处理URL传值乱码问题。在传递参数之前,可以使用JavaScript中的encodeURIComponent函数对参数进行编码,以确保参数中的特殊字符被正确地转义。通过使用这些URL编码/解码的库,你可以更方便地处理URL传值中的中文乱码问题。 阅读详情

相关推荐

Vivado实战:AXI转PCIe IP核配置全流程(含性能优化技巧)

本文详细介绍了在Vivado环境中配置AXI转PCIe IP核的全流程,包括工程准备、IP核参数设置、BAR空间配置、中断系统优化以及TLP传输效率提升等关键步骤。特别分享了经过验证的性能优化技巧,帮助开发者显著提升PCIe链路的吞吐量和稳定性,适用于视频采集、高速数据记录等应用场景。

weixin_30892037的博客 552

URL 含中文 链接不上

你需要把中文转码,然后在服务器进行解码操作 因为请求连接是不支持中文的 例子如下: String string = "蔡君如"; String eStr = URLEncoder.encode(string, "utf-8"); System.out.println(eStr); System.out.println(URLDecoder.decode(eStr, "utf-8")

编程日常记录与总结 https://franciswmf.iteye.com 1419

开源滑翔伞升降速度表:基于STM32与传感器融合的DIY飞行仪表

传感器融合是现代嵌入式系统与物联网设备中的核心技术,它通过整合多个传感器的数据,利用滤波与估计算法,获得比单一传感器更精确、更可靠的环境感知能力。其技术价值在于提升系统的鲁棒性、精度和上下文理解能力,广泛应用于无人机导航、可穿戴设备、工业监测及智能驾驶等领域。本文聚焦于一个具体的工程实践案例——开源多功能滑翔伞升降速度表(Open-Vario),该项目巧妙地运用了**卡尔曼滤波器**进行气压与GNSS数据的融合,以精确计算升降率,并基于**FreeRTOS**实时操作系统构建了一个稳定、可扩展的嵌入式平台,

weixin_33657398的博客 176

JAVA 中URL中文参数乱码的处理方法

一般情况下url中文参数乱码,只要设置好页面编码格式,然后把tomcat的server.xml设置一下就好了,但是现在这个项目因为tomcat下面放的不止一个项目,改设置可能会引起其他项目的编码问题,所以不能改,为此颇纠结了一番,而网上很多方法就是用escape()、encodeURI()、encodeURIComponent()来编码,然后去后天通过硬编码new String(s.getBy

爱春秋 1万+

银河麒麟V10系统grub崩溃急救指南:从光盘救援到完整恢复(附常见错误排查)

本文详细介绍了银河麒麟V10系统grub崩溃的急救方法,从使用安装光盘进入救援环境到完整恢复系统的全流程。针对不同损坏程度(轻度、中度、严重)提供了分级恢复策略,包括grub2-install和grub2-mkconfig等关键命令的使用,并附有常见错误排查表,帮助用户快速解决引导问题。

weixin_30955617的博客 483

避开这5个坑!STC8H DMA串口通信的实战避坑指南(115200波特率实测)

本文深入解析了STC8H单片机利用DMA实现稳定全双工串口通信的实战要点。针对115200高波特率场景,详细拆解了DMA-UART架构、关键寄存器配置、时钟精度计算、缓冲区管理及中断协同等核心环节,并提供了具体的避坑指南和调试方法,帮助开发者构建高效可靠的通信链路。

melon的博客 675

中文路径问题,中文url

中文路径问题,中文url 在使用rails的webrick过程中碰到中文url问题,原本认为很简单的事情其实并不简单。为了了解中文路径问题,特别在apache,iis下面做了试验。过程如下:首先要准备好gb2312和utf-8的文件名。这里使用python来获得。>>> s_gb=我.txt>>> print s_gb我.txt>>> s_gb/xce/x

funson的专栏 2729

带硬约束的物理信息神经网络(PINN with Hard Constraint)示例及代码

本文以一个案例介绍了带硬约束的物理信息神经网络的原理及实现步骤。

m0_72768523的博客 5357

URLConnection 中文参数乱码问题

现像 最近做一个RSS功能,通过后台读取另一服务器上的RSS内容,第三方公司提供了一个公共的请求地址,他们内部会根据请求参数cmd重定向(将公共的请求地址后的参数附上),如下图: 1、在IE中直接请求“http://*******/CRBT_new/jsp/rss.jsp?cmd=search&module=12530-search&nums=10&keywords=中国&page=1&c

rainbow0101的专栏 4168

WRF模型下中国土地利用数据替换USGS-24分类的完整实践指南

本文提供了在WRF模型中,将中国土地利用数据替换默认USGS-24分类的完整实践指南。详细阐述了替换下垫面数据的必要性,并分步讲解了数据准备、坐标转换、分类体系重映射、格式转换及配置文件修改等核心操作,旨在帮助用户提升针对中国区域的模拟精度。

salt的博客 777

MATLAB打开.m文件乱码解决办法

Matlab打开.m文件出现中文乱码问题,是因为Matlab存在两种编码格式:GBK和UTF-8,而不同版本的Matlab编码格式可能不统一,因此在不同版本的Matlab打开文件,由于编码格式的改变,会导致注释乱码。 1.查看你的Matlab的文件编码方式,在Matlab的命令行窗口输入feature('locale') ,如下图,可以看到默认编码为GBK,那问题就变成了将Matlab的文件编码方式GBK修改成UTF-8; 2.找到你的Matlab安装目录bin文件夹下的lcdata_utf.

zhugby的博客 4万+

解决Fiddler查看Get方法传递URL参数中文乱码问题

解决Fiddler查看Get方法传递URL参数中文乱码问题 分析: 请求服务器显示页面过程 第一步:浏览器把URL经过编码送给服务器; 第二步:服务器把这些请求解码处理完毕之后将显示的内容进行编码发送给客户端浏览器; 第三步:浏览器按照指定的编码显示网页 解决方法: 1.在WebForms中依旧为乱码。经分析,此处的乱码是由于GBK与U

JusterDu的博客 8220

车辆网络安全ISO/SAE 21434解读(一)概述

ISO/SAE 21434 《道路车辆 网络安全工程》是SAE和ISO共同制定的一项针对道路车辆的网络安全标准,它是一个面向汽车行业全供应链(OEM及各级供应商)的车辆网络安全管理指导文件

xiaoxiabang的博客 8425

解决URL中有中文的问题,可以放心使用url.opnestream方法

解决URL中有中文的问题,可以放心使用url.opnestream方法

To哥的博客 4894

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

url 传递中文参数乱码问题的终极解决方法。

url 传递中文参数乱码问题的终极解决方法。

wangchaoqi1985的博客 293

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

HTML的Get方法URL传递中文参数,解决乱码问题

HTML的Get方法URL传递中文参数,解决乱码问题

p15097962069的博客 598

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

jquery获取URL中参数解决中文乱码问题的两种方法

jquery获取URL中参数解决中文乱码问题的两种方法 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-18 我要评论 从A页面通过url传参到B页面时,获取URL中参数出现中文乱码问题,解析url参数的正确方法如下,感兴趣的朋友可以参考下 从A页面通过url传参到B页面时,解析url参数可以用下面两种方法: 方法一:正则分析法 复制代码 代码

qq_26577163的博客 3282

关于IE下get方法url中中文乱码的问题解决

最近测试提出,网站在ie浏览器下,条件查询失效,bug排查后才发现:原来是url条件查询带有中文导致乱码问题。解决方法如下: 转自:https://www.cnblogs.com/githubzy/p/5752976.html 最近在做项目的时候遇到了一个问题,在Chrome下,使用ajax的get方法请求数据时,url中带中文是没有问题的,但是在IE下,中文会被变成乱码发送过去,以至于无法获...

OldStreet61的博客 1202

IE下get方法url中中文乱码的问题解决

最近在做项目的时候遇到了一个问题,在Chrome下,使用ajax的get方法请求数据时,url中带中文是没有问题的,但是在IE下,中文会被变成乱码发送过去,以至于无法获取数据。 一开始想到让服务端解析来解决,但是由于发送时已经是乱码,服务端也无法解析乱码。 后来想到了一个办法:使用encodeURI方法将中文转换至URI编码,可以完美解决乱码问题,并且兼容所有浏览器。 具体代码如下: v...

hujiujun的博客 1160

java url 传值乱码问题_解决URL传递中文时出现乱码问题(三种解决方法)

一、问题场景一般在使用下面几种使用场景情况下,传递参数为中文时,接收得到的值都有可能乱码,具体如下:1.直接在浏览器使用url地址访问2.页面提交form表单时,method设置为GET3.使用ajax获取数据时,mehtod设置为GET4.在程序中使用jvm提供URL资源定位实现方式(java.net.URL)..二、问题重现1.默认情况描述Tomcat服务器(默认“8080”端口),URL参数...

weixin_36372094的博客 2105

解决tomcat下的URL中文乱码问题的方法

原文:http://voff12.iteye.com/blog/122957 解决tomcat下的URL中文乱码问题的方法: 1)tomcat下的conf/server.xml 两处加上URIEncoding="UTF-8" 如下:  Java代码   &lt;Connector   rt="8080"               maxHttpHeaderSize="8...

玄冬Wong 417

jquery.ajax的url中传递中文乱码问题的解决方法

jquery.ajax的url中传递中文乱码问题的解决方法

dearbaba_8520的博客 187

解决tomcat下的URL中文乱码问题的方法:

解决tomcat下的URL中文乱码问题的方法: 转自:http://hi.baidu.com/etrigger/blog/item/9989b4958de4704ed0135e03.html   解决tomcat下的URL中文乱码问题的方法: 1)tomcat下的conf/server.xml 两处加上URIEncoding="UTF-8" 如下: Java代码...

jiayanjugood的专栏 165
上一篇: smartupload中下载中文文件名的处理方法
下一篇: 关于struts的使用技巧
samlover
博客等级 码龄25年 0粉丝 70原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值