ÊÖ»úÕ¾
ÍøÍ¨·ÖÕ¾
µçÐÅÖ÷Õ¾
ÃÜ¡¡Âë:
Óû§Ãû£º
µ±Ç°Î»Öà : Ö÷Ò³>³ÌÐòÉè¼Æ>Java¼¼Êõ>Áбí

URLs,URIs,ProxiesºÍPasswords ½âÎö

À´Ô´£º»¥ÁªÍø ×÷Õߣºwest263.com ʱ¼ä£º2008-02-23
Î÷²¿ÊýÂë-È«¹úÐéÄâÖ÷»ú10Ç¿£¡40ÓàÏîÐéÄâÖ÷»ú¹ÜÀí¹¦ÄÜ,È«¹úÁìÏÈ!Ë«Ïß¶àÏßÐéÄâÖ÷»úÄϱ±·ÃÎʳ©Í¨ÎÞ×è!Ãâ·ÑÔùËÍÆóÒµÓʾÖ,.CNÓòÃû,×ÔÖú½¨Õ¾480ÔªÆð,Ãâ·ÑÊÔÓÃ7Ìì,ÂúÒâÔÙ¸¶¿î! P4Ö÷»ú×âÓÃ799Ôª/ÔÂ.Ô¸¶Ãâѹ½ð!

ÀàURLEncoder ºÍ ÀàURLDecoder

WebÉè¼ÆÕßÃæÁÙµÄÖÚ¶àÄÑÌâÖ®Ò»±ãÊÇÔõÑù´¦Àí²»Í¬²Ù×÷ϵͳ¼äµÄ²îÒìÐÔ¡£ÕâЩ²îÒìÐÔÄÜÒýÆðURL·½ÃæµÄÎÊÌ⣺ÀýÈ磬һЩ²Ù×÷ϵͳÔÊÐíÎļþÃûÖк¬Óпոñ·û£¬ÓÐЩÓÖ²»ÔÊÐí¡£´ó¶àÊý²Ù×÷ϵͳ²»»áÈÏΪÎļþÃûÖк¬ÓзûºÅ“#”»áÓÐÊ²Ã´ÌØÊ⺬Ò壻µ«ÊÇÔÚÒ»¸öURLÖУ¬·ûºÅ“#”±íʾ¸ÃÎļþÃûÒѾ­½áÊø£¬ºóÃæ»á½ô¸úÒ»¸öfragment£¨²¿·Ö£©±êʶ·û¡£ÆäËûµÄÌØÊâ×Ö·û£¬·Ç×ÖĸÊý×Ö×Ö·û¼¯£¬ËüÃÇÔÚURL»òÁíÒ»¸ö²Ù×÷ϵͳÉ϶¼ÓÐÆäÌØÊâµÄº¬Ò壬±íÊö×ÅÏàËÆµÄÎÊÌ⡣ΪÁ˽â¾öÕâЩÎÊÌ⣬ÎÒÃÇÔÚURLÖÐʹÓõÄ×Ö·û¾Í±ØÐëÊÇÒ»¸öASCII×Ö·û¼¯µÄ¹Ì¶¨×Ö¼¯ÖеÄÔªËØ£¬¾ßÌåÈçÏ£º
1.´óд×ÖĸA-Z
2.Сд×Öĸa-z
3.Êý×Ö 0-9
4.±êµã·û - _ . ! ~ * ' (ºÍ ,)

ÖîÈç×Ö·û: / & ? @ # ; $ = ºÍ %Ò²¿ÉÒÔ±»Ê¹Ó㬵«ÊÇËüÃǸ÷ÓÐÆäÌØÊâµÄÓÃ;£¬Èç¹ûÒ»¸öÎļþÃû°üÀ¨ÁËÕâЩ×Ö·û£¨ / & ? @ # ; $ = %£©£¬ÕâЩ×Ö·ûºÍËùÓÐÆäËû×Ö·û¾ÍÓ¦¸Ã±»±àÂë¡£

±àÂë¹ý³Ì·Ç³£¼òµ¥£¬ÈκÎ×Ö·ûÖ»Òª²»ÊÇASCIIÂëÊý×Ö£¬×Öĸ£¬»òÕßÇ°ÃæÌáµ½µÄ±êµã·û£¬ËüÃǶ¼½«±»×ª»»³É×Ö½ÚÐÎʽ£¬Ã¿¸ö×Ö½Ú¶¼Ð´³ÉÕâÖÖÐÎʽ£ºÒ»¸ö“%”

ºóÃæ¸ú×ÅÁ½Î»16½øÖƵÄÊýÖµ¡£¿Õ¸ñÊÇÒ»¸öÌØÊâÇé¿ö£¬ÒòΪËüÃÇ̫ƽ³£ÁË¡£Ëü³ýÁ˱»±àÂë³É“ ”ÒÔÍ⣬»¹ÄܱàÂëΪһ¸ö“ ”¡£¼ÓºÅ£¨ £©±¾Éí±»±àÂëΪ+¡£µ±/ # = & ºÍ?×÷ΪÃû×ÖµÄÒ»²¿·ÖÀ´Ê¹ÓÃʱ£¬¶ø²»ÊÇ×÷ΪURL²¿·ÖÖ®¼äµÄ·Ö¸ô·ûÀ´Ê¹ÓÃʱ£¬ËüÃǶ¼Ó¦¸Ã±»±àÂë¡£

WARNINGÕâÖÖ²ßÂÔÔÚ´æÔÚ´óÁ¿×Ö·û¼¯µÄÒì¹¹»·¾³ÖÐЧ¹û²»ÉõÀíÏë¡£ÀýÈ磺ÔÚU.S. Windows ϵͳÖÐ, é ±»±àÂëΪ é. ÔÚ U.S. MacÖб»±àÂëÎªŽ¡£ÕâÖÖ²»È·¶¨ÐԵĴæÔÚÊÇÏÖ´æµÄURIµÄÒ»¸öÃ÷ÏԵIJ»×ã¡£ËùÒÔÔÚ½«À´URIµÄ¹æ·¶µ±ÖÐÓ¦¸Ãͨ¹ý¹ú¼Ê×ÊÔ´±êʶ·û(IRIs)½øÐиÄÉÆ¡£

ÀàURL²¢²»×Ô¶¯Ö´ÐбàÂë»ò½âÂ빤×÷¡£ÄãÄÜÉú³ÉÒ»¸öURL¶ÔÏó£¬Ëü¿ÉÒÔ°üÀ¨·Ç·¨µÄASCIIºÍ·ÇASCII×Ö·ûºÍ/»ò%xx¡£µ±Ó÷½·¨getPath() ºÍtoExternalForm( ) ×÷ΪÊä³ö·½·¨Ê±£¬ÕâÖÖ×Ö·ûºÍ×ªÒÆ·û²»»á×Ô¶¯±àÂë»ò½âÂë¡£ÄãÓ¦¶Ô±»ÓÃÀ´Éú³ÉÒ»¸öURL¶ÔÏóµÄ×Ö·û´®·±ÈÙ¶ÔÏó¸ºÔð£¬È·±£ËùÓÐ×Ö·û¶¼»á±»Ç¡µ±µØ±àÂë¡£


ÐÒÔ˵ÄÊÇ£¬JavaÌṩÁËÒ»¸öÀàURLEncoder°Ñstring±àÂë³ÉÕâÖÖÐÎʽ¡£Java1.2Ôö¼ÓÁËÒ»¸öÀàURLDecoderËüÄÜÒÔÕâÖÖÐÎʽ½âÂëstring¡£ÕâÁ½¸öÀà¶¼²»Óóõʼ»¯

public class URLDecoder extends Object
public class URLEncoder extends Object



URLEncoder

ÔÚjava1.3ºÍÔçÆÚ°æ±¾ÖУ¬Ààjava.net.URLEncoder°üÀ¨Ò»¸ö¼òµ¥µÄ¾²Ì¬·½·¨encode( ) Ëü¶ÔstringÒÔÈçϹæÔò½øÐбàÂ룺
public static String encode(String s)
Õâ¸ö·½·¨×ÜÊÇÓÃËüËùÔÚÆ½Ì¨µÄĬÈϱàÂëÐÎʽ£¬ËùÒÔÔÚ²»Í¬ÏµÍ³ÉÏ£¬Ëü¾Í»á²úÉú²»Í¬µÄ½á¹û¡£½á¹ûjava1.4ÖУ¬Õâ¸ö·½·¨±»ÁíÒ»ÖÖ·½·¨È¡´úÁË¡£¸Ã·½·¨ÒªÇóÄã×Ô¼ºÖ¸¶¨±àÂëÐÎʽ£º

public static String encode(String s, String encoding) 
throws UnsupportedEncodingException



Á½ÖÖ¹ØÓÚ±àÂëµÄ·½·¨£¬¶¼°ÑÈκηÇ×ÖĸÊý×Ö×Ö·ûת»»³É%xx£¨³ýÁ˿ոñ£¬Ï»®Ïß(_)£¬Á¬×Ö·û£¨—£©,¾äºÅ£¨¡££©,ºÍÐǺţ¨*£©£©¡£
Á½ÕßÒ²¶¼±àÂëËùÒԵķÇASCII×Ö·û¡£¿Õ¸ñ±»×ª»»³ÉÒ»¸ö¼ÓºÅ¡£ÕâЩ·½·¨ÓÐÒ»µã¹ý·ÖÀÛ׸ÁË£»ËüÃÇ—Ò²°Ñ“~”£¬“‘”£¬“£¨£©”ת»»³É%xx£¬¼´Ê¹ËüÃÇÍêÈ«Óò»×ÅÕâÑù×ö¡£¾¡¹ÜÕâÑù£¬µ«ÊÇÕâÖÖת»»²¢Ã»±»URL¹æ·¶Ëù½ûÖ¹¡£ËùÒÔwebä¯ÀÀÆ÷»á×ÔÈ»µØ´¦ÀíÕâЩ±»¹ý·Ö±àÂëºóµÄURL¡£

Á½ÖйØÓÚ±àÂëµÄ·½·¨¶¼·µ»ØÒ»¸öеı»±àÂëºóµÄstring£¬java1.3µÄ·½·¨encode( ) ʹÓÃÁËÆ½Ì¨µÄĬÈϱàÂëÐÎʽ£¬µÃµ½%xx¡£ÕâЩ±àÂëÐÎʽµäÐ͵ÄÓУºÔÚ U.S. Unix ϵͳÉϵÄISO-8859-1, ÔÚU.S. Windows ϵͳÉϵÄCp1252,ÔÚU.S. MacsÉϵÄMacRoman£¬ºÍÆäËû±¾µØ×Ö·û¼¯µÈ¡£ÒòΪ±àÂë½âÂë¹ý³Ì¶¼ÊÇÓë±¾µØ²Ù×÷ƽ̨Ïà¹ØµÄ£¬ËùÒÔÕâЩ·½·¨ÊÇÁíÈ˲»Ë¬µÄ£¬²»ÄÜ¿çÆ½Ì¨µÄ¡£Õâ¾ÍÃ÷È·µØ»Ø´ðÁËΪʲôÔÚjava1.4ÖÐÕâÖÖ·½·¨±»ÅׯúÁË£¬×ª¶øÍ¶ÏòÁËÒªÇóÒÔ×Ô¼ºÖ¸¶¨±àÂëÐÎʽµÄÕâÖÖ·½·¨¡£¾¡¹ÜÈç´Ë£¬Èç¹ûÄãÖ´ÒâҪʹÓÃËùÔÚÆ½Ì¨µÄĬÈϱàÂëÐÎʽ£¬ÄãµÄ³ÌÐò½«»áÏñÔÚjava1.3ÖеijÌÐòÒ»Ñù£¬ÊDZ¾µØÆ½Ì¨Ïà¹ØµÄ¡£ÔÚÁíÒ»ÖÖ±àÂëµÄ·½·¨ÖУ¬ÄãÓ¦¸Ã×ÜÊÇÊÂÒµUTF-8£¬¶ø²»ÊÇÆäËûʲô¡£UTF-8±ÈÆðÄãÑ¡µÄÆäËûµÄ±àÂëÐÎʽÀ´Ëµ£¬ËüÄÜÓëеÄwebä¯ÀÀÆ÷ºÍ¸ü¶àµÄÆäËûÈí¼þÏà¼æÈÝ¡£

Àý×Ó7-8ÊÇʹÓÃURLEncoder.encode( ) À´´òÓ¡Êä³ö¸÷ÖÖ±»±àÂëºóµÄstring¡£ËüÐèÒªÔÚjava1.4»ò¸üеİ汾ÖбàÒëºÍÔËÐС£
Example 7-8. x-www-form-urlencoded strings

import java.net.URLEncoder;
import java.io.UnsupportedEncodingException;


public class EncoderTest {

public static void main(String[] args) {

try {
System.out.println(URLEncoder.encode("This string has spaces",
"UTF-8"));
System.out.println(URLEncoder.encode("This*string*has*asterisks",
"UTF-8"));
System.out.println(URLEncoder.encode("This%string%has%percent%signs",
"UTF-8"));
System.out.println(URLEncoder.encode("This string has pluses",
"UTF-8"));
System.out.println(URLEncoder.encode("This/string/has/slashes",

ÎÄÕÂÕûÀí£ºÎ÷²¿ÊýÂë--רҵÌṩÓòÃû×¢²á¡¢ÐéÄâÖ÷»ú·þÎñ
http://www.west263.com
ÒÔÉÏÐÅÏ¢ÓëÎÄÕÂÕýÎÄÊDz»¿É·Ö¸îµÄÒ»²¿·Ö,Èç¹ûÄúÒª×ªÔØ±¾ÎÄÕÂ,Çë±£ÁôÒÔÉÏÐÅÏ¢£¬Ð»Ð»!