Flash as3土耳其语字符编码

时间:2012-06-16 22:07:52

标签: html facebook actionscript-3

我使用Flash as3开发了一个Facebook应用程序。在此应用程序中,当用户完成测试时,将在用户墙上发布证书URL。 url使用土耳其语字符用户名和用户姓进行编码。在证书swf文件中,它读取url并在jpg上显示用户名。这项工作对英语用户很有用,但当用户名是土耳其语时问题就出现了。我附加了主要问题的jpg,你可以清楚地看到网址看起来不错,但是当我复制过去的网址时,我得到的结果与图片上的显示相同。

error screensohot

我的证书Swf代码是

package  {

import flash.display.MovieClip;
import flash.net.URLLoader;
import flash.net.URLVariables;
import flash.external.ExternalInterface;
import com.adobe.images.JPGEncoder;


public class main extends MovieClip {


    public function main() {
        valuePairs = new Array();
        nextValuePare = new Array();

        var search:String = ExternalInterface.call("window.location.href.toString");


        //var vars:URLVariables = new URLVariables(search);

        valuePairs = search.substring(search.indexOf("?")+1).split("&");
        trace(valuePairs);
        var map:Object = new Object();
        for (var i:int = 0; i<valuePairs.length; i++)
        {
            nextValuePare = valuePairs[i].split("=");
            trace(nextValuePare);
            map[nextValuePare[0]] = nextValuePare[1];
        }

        picture.fbookName.text = String(map["fName"]) +" "+ String(map["lName"]);



    }

    private var _urlLoader:URLLoader;
    private var _urlVariable:URLVariables;
    private var valuePairs:Array;
    private var nextValuePare:Array
}

}

1 个答案:

答案 0 :(得分:0)

您应使用顶级功能encodeURI()对您的网址进行网址编码。然后在swf中从URL中提取名称使用decodeURI()