導航:首頁 > 編程語言 > jsurl中文解碼

jsurl中文解碼

發布時間:2024-10-19 07:33:25

『壹』 SSH環境 jsp url跳轉,帶中文參數亂碼問題 高手請進,謝謝

URL中編碼格式為ISO-8859-1,處理中文只需將編碼格式轉換ISO-8859-1

方法一:
http://xxx.do?ptname='我是中國人'
String strPtname = request.getParameter("ptname");
strPtname = new String(strPtname.getBytes("ISO-8859-1"), "UTF-8");

方法二(推薦使用):

<%@ page contentType="text/html;charset=gb2312" %>

<a href="ds.jsp?url=<%=java.net.URLEncoder.encode("編碼的是這里","GB2312")%>">點擊這里</a>

<%
//request.setCharacterEncoding("GBK");
if(request.getParameter("url")!=null)
{

str=request.getParameter("url");
str=java.net.URLDecoder.decode(str,"GB2312");
str=new String(str.getBytes("ISO-8859-1"));
out.print(str);
}

%>

==================================

public String chinatoString(String str)
{
String s=str;
try
{
byte tempB[]=s.getBytes("ISO-8859-1");
s=new String(tempB);
return s;
}
catch(Exception e)
{
return s;
}
}

====================================================

function URLencode(sStr)
{
return escape(sStr).
replace(/\+/g, '%2B').
replace(/\"/g,'%22').
replace(/\'/g, '%27').
replace(/\//g,'%2F');
}

方法三:
如果用jstl的話,可以自己寫一個el的function,調用URLEncoder.encode來編碼。

IE預設對URL後面的參數是不編碼發送的,但是tomat預設是按ISO8859-1來進行URL解碼,因此才會出現上述錯誤。好的做法是:
1、在URL參數中確保用UTF-8編碼之,方法可以用js函數encodeURI(),或調用自定義的el function;
2、設置server.xml中的Connector熟悉URIEncoding="UTF-8",確保解碼格式與編碼格式統一;

方法四:

<script>
for(var i=0;i<document.links.length;i++){
document.links[i].href=encodeURI(document.links[i].href);
}
</script>
在action中,String s=request.getParameter("s");
s=new String(s.getBytes("iso-8859-1"),"gbk");

以上方法是收聚了一些網友所講的解決方法 。

『貳』 用JS將URL中的漢字編碼成GBK,怎麼弄

varGB2312UnicodeConverter={
ToUnicode:function(str){
returnescape(str).toLocaleLowerCase().replace(/%u/gi,'\u');
}
,ToGB2312:function(str){
returnunescape(str.replace(/\u/gi,'%u'));
}
};

用此方法試試。

個人覺得這個轉碼的工作最好還版是在接收端權做

『叄』 urlencoder.encode,"utf-8" 編碼 js什麼解碼

1、漢字出現在URL路徑部分的時候不需要編碼解碼;
2、使用encodeURI進行2次編碼;
3、在openModelDialog()打開的模式窗體里沒辦法用request.getParameter正確獲取參數;
客戶端和伺服器在傳遞數據時可以用過濾器filter解決字元編碼問題,但filter只能解決post方式提交的數據。對於get方式,可以使用兩次encodeURI(encodeURI(「中文」))並在伺服器中使用URLDecoder.decode(「中文」,
"UTF-8");
今天用Ajax校驗數據時也遇到這個問題,盡管頁面、類和web容器都統一了字元編碼,提交的數據依然是亂碼,所以就採用了2次encodeURI()編碼方式,亂碼問題就解決了。
在頁面中:
/exportExcel.topinfo?ls="+encodeURI(encodeURI(_tmplsgx))+"&zt="+encodeURI(encodeURI(_tmpzt))
在action中
String ls=request.getParameter("ls");
ls = new String(ls.getBytes("iso-8859-1"),"utf-8");
ls = java.net.URLDecoder.decode(ls,"UTF-8");
這樣亂碼就解決了。

『肆』 js 傳值url 亂碼問題

JS是UTF-8的,那你接收的文件是不是GB類型的?兩者語言不一致,導致出現亂碼。專
我剛調試完自己寫的類似ajax的一段屬JS。
ajax({
url:"http://",
method:'post',
type:"gb2312",
success:function(){...}
})

這里多了「type:gb2312」,就是告訴ajax,提交類型為非UTF-8類型,在提交的時候就可以將中文字元通過VBurlencode進行轉換。比將「中國」轉換成「%D6%D0%B9%FA」,而非escape("中文文字")。

閱讀全文

與jsurl中文解碼相關的資料

熱點內容
win10系統文件缺失介質修復 瀏覽:900
怎麼樣系統升級 瀏覽:518
魔客吧傳奇網站模板 瀏覽:365
一段代碼解決html多瀏覽器兼容 瀏覽:803
淘車大師app官方下載 瀏覽:953
win10系統怎麼能找回桌面文件 瀏覽:423
換主板怎麼裝驅動程序 瀏覽:563
宜搜小說舊版本 瀏覽:310
win10凈網大師 瀏覽:262
蘋果5s移動網路設置 瀏覽:680
主文件名的格式 瀏覽:336
如何找吃的app 瀏覽:11
js判斷跳轉前的頁面地址 瀏覽:555
qq瀏覽器儲存密碼 瀏覽:309
網站字體陰影特效代碼 瀏覽:187
g10刀軌銑內腔該如何編程 瀏覽:295
泰劇用哪個app 瀏覽:503
iphone4豆瓣fm 瀏覽:921
錘子的數據轉移都轉移什麼 瀏覽:230
iphone4開機提示連接itunes 瀏覽:359

友情鏈接