![]() |
|
||||||||||
|
|||||
|
Регистрация: Aug 2012
Сообщений: 1
|
Для плеера загружаю файл из интернета по относительной ссылке. После начала загрузки беру окончательный адрес, вырезаю имя и вывожу в текстовое поле.
Выводятся глупости, как при попытке копировать адрес с Википедии. В CS6 все работает нормально но вот в фаерфоксе, хроме, и эксплоере не так как надо. Спинным мозгом чувствую, что надо кодировку сменить. Но как ? Даже проводил эксперимент начитавшись поиска по форуму. Который доказывает, что получаю UTF-8. Но вот отображать в текстовом поле UTF-8 не хочет. Вот собственно код: // Для хранения окончательного адреса файла var nameMP3File:String = ""; // Текстовое поле для отображения имени файла. var textTitle:TextField = new TextField(); var textTitleFormat:TextFormat = new TextFormat(); // Настройка текстового поля. textTitleFormat.size = 14; textTitleFormat.font = "Arial"; textTitle.defaultTextFormat = textTitleFormat; textTitle.height = 20; textTitle.width = 300; textTitle.border = true; textTitle.selectable = false; addChild(textTitle); // Для аудио данных. var tempSoundData:Sound = new Sound; // Аудио канал. var tempChannelLinc:SoundChannel; // Запрос на файл. var tempRequestLinc:URLRequest = new URLRequest("http://www.******/get/30246096"); // Загрузка по адресу. tempSoundData.load(tempRequestLinc); // Событие загрузки. Появляется пока идет загрузка.; tempSoundData.addEventListener(ProgressEvent.PROGRESS,onProgress); function onProgress(event:Event) { // Как только получено имя файла, функция будет работать в холостую. if (nameMP3File.length < 1) { // Взятие прямой ссылки на файл. nameMP3File = tempSoundData.url; // Получение названия файла (без расширения). nameMP3File = nameMP3File.substring(nameMP3File.lastIndexOf("/") + 1,nameMP3File.lastIndexOf(".")); // Показать имя в текстовом поле. textTitle.text = nameMP3File; // Убрать за собой более не нужное. // В теории приостановит загрузку. tempSoundData = null; tempChannelLinc = null; } } stop(); Добавлено через 1 час 44 минуты Крыша едет не спеша. Добавил код перед присвоением текстовому полю. var tempString:String = ""; var charNumb:Array = [1055, 1088, 1086, 1087, 1072, 1075, 1072, 1085, 1076, 1072, 95, 45, 95, 1052, 1077, 1083, 1086, 1084] var charCode:int = 0; for (var i:int = 0; i != nameMP3File.length; i++) { trace ("charNumb[i] " + charNumb[i]) tempString += String.fromCharCode(charNumb[i]) trace("tempString " + tempString) } nameMP3File = tempString; charNumb[i] 1055 tempString П charNumb[i] 1088 tempString Пр charNumb[i] 1086 tempString Про charNumb[i] 1087 tempString Проп charNumb[i] 1072 tempString Пропа charNumb[i] 1075 tempString Пропаг charNumb[i] 1072 tempString Пропага charNumb[i] 1085 tempString Пропаган charNumb[i] 1076 tempString Пропаганд charNumb[i] 1072 tempString Пропаганда charNumb[i] 95 tempString Пропаганда_ charNumb[i] 45 tempString Пропаганда_- charNumb[i] 95 tempString Пропаганда_-_ charNumb[i] 1052 tempString Пропаганда_-_М charNumb[i] 1077 tempString Пропаганда_-_Ме charNumb[i] 1083 tempString Пропаганда_-_Мел charNumb[i] 1086 tempString Пропаганда_-_Мело charNumb[i] 1084 tempString Пропаганда_-_Мелом ВСЕ РАБОТАЕТ КАК НАДО. И в CS и в Фаерфоксе. ИЕ ничего не показал. Изменил код на на: var tempString:String = ""; var charNumb:Array = new Array(); var charCode:int = 0; for (var i:int = 0; i != nameMP3File.length; i++) { charNumb[i] = nameMP3File.charCodeAt(i); trace ("charNumb[i] " + charNumb[i]) tempString += String.fromCharCode(charNumb[i]) trace("tempString " + tempString) } nameMP3File = tempString; Вывод в Дебаг: charNumb[i] 1055 tempString П charNumb[i] 1088 tempString Пр charNumb[i] 1086 tempString Про charNumb[i] 1087 tempString Проп charNumb[i] 1072 tempString Пропа charNumb[i] 1075 tempString Пропаг charNumb[i] 1072 tempString Пропага charNumb[i] 1085 tempString Пропаган charNumb[i] 1076 tempString Пропаганд charNumb[i] 1072 tempString Пропаганда charNumb[i] 95 tempString Пропаганда_ charNumb[i] 45 tempString Пропаганда_- charNumb[i] 95 tempString Пропаганда_-_ charNumb[i] 1052 tempString Пропаганда_-_М charNumb[i] 1077 tempString Пропаганда_-_Ме charNumb[i] 1083 tempString Пропаганда_-_Мел charNumb[i] 1086 tempString Пропаганда_-_Мело charNumb[i] 1084 tempString Пропаганда_-_Мелом */ Фаерфокс показывает: %D0%9F%D1%80%D0%BE%D0%BF%D0%B0%D0%B3%D0%B0%D0%BD%D0%B4%D0%B0_-_%D0%9C%D0%B5%D0%BB%D0%BE%D0%BC ИЕ ничего не показывает. Перефразировав UKR(Андрійя Миколайчука - "Піду втоплюся": Піду нап'юся із банки літровой)... Последний раз редактировалось MonahMonahich; 14.08.2012 в 18:44. |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:13. |
|
|
« Предыдущая тема | Следующая тема » |
|
|