static ManualTranslateLanguage SerachAsset()
        {
            string languageType = TranslateLog.currentLanguage();

            ManualTranslateLanguage language = null;
            var filePattern = string.Format("{0}.asset", languageType);

            var files = Directory.GetFiles(Application.dataPath, filePattern, SearchOption.AllDirectories);

            foreach (string path in files)
            {
                string newPath = path.Replace(Application.dataPath, "Assets");
                language = (ManualTranslateLanguage)AssetDatabase.LoadAssetAtPath(newPath, typeof(ManualTranslateLanguage));
                break;
            }
            return(language);
        }
        public void TranslateMethod(string text, TranslateResultMessage translateResult)
        {
            string token = GetToken();

            string from = "en";
            string to   = TranslateLog.currentLanguage();

            if (to == "en")
            {
                translateResult(text);
                return;
            }

            string uri = "http://api.microsofttranslator.com/v2/Http.svc/Translate?text="
                         + WWW.EscapeURL(text) + "&from=" + from + "&to=" + to;
            HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(uri);

            httpWebRequest.Headers.Add("Authorization", token);

            WebResponse response = null;

            try {
                response = httpWebRequest.GetResponse();
                string xml = string.Empty;
                using (StreamReader stream = new StreamReader(response.GetResponseStream())) {
                    xml = stream.ReadToEnd();
                }

                XmlDocument doc = new XmlDocument();
                doc.LoadXml(xml);

                translateResult(doc.InnerText);
            } finally {
                if (response != null)
                {
                    response.Close();
                    response = null;
                }
            }
        }