function UrlDecode(str) {
str = StringReplaceAll(str, "\\", " ");
str = unescape(str);
return (str);
}
function UrlEncode(str) {
str = escape(str);
str = StringReplaceAll(str, "\\", "%2B");
str = StringReplaceAll(str, "%20", "+");
return (str);
}
function StringReplaceAll(source, find, replacement) {
return (source.split(find).join(replacement));
}
後來發現as3內建了個方法,很實用
encodeURI()
將字串編碼為有效 URI(統一資源識別項)。 將完整的 URI 轉換為一個字串,其中除屬於一小組基底字元的字元外,其它所有字元都編碼為 UTF-8 逸出序列。
下表顯示不會 由 encodeURI 函數轉換為 UTF-8 逸出序列的基底字元的整個集合。
| 未編碼的字元 |
0 1 2 3 4 5 6 7 8 9 |
a b c d e f g h i j k l m n o p q r s t u v w x y z |
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z |
; / ? : @ & = + $ , # |
- _ . ! ~ * ' ( ) |
內建的代碼例子
package {
import flash.display.Sprite;
public class EncodeURIExample extends Sprite {
public function EncodeURIExample() {
var uri:String = "http://www.example.com/application.jsp?user=<user name='some user'></user>";
var encoded:String = encodeURI(uri);
var decoded:String = decodeURI(encoded);
trace(uri); //
http://www.example.com/application.jsp?user=<user name='some user'></user>
trace(encoded); //
http://www.example.com/application.jsp?user=%3Cuser%20name='some%20user'%3E%3C/user%3E
trace(decoded); //
http://www.example.com/application.jsp?user=<user name='some user'></user>
}
}
}