Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.11.2007, 20:15
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 1  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
По умолчанию Ошибка при чтении XML

Создал Аир приложение.
Пишу:
Код:
import flash.filesystem.*;
var file:File = File.userDirectory.resolvePath("AIR_Test/states.xml");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
var prefsXML:XML = XML(fileStream.readUTFBytes(fileStream.bytesAvailable));
fileStream.close();
Выдаёт:
Код:
TypeError: Error #1088: The markup in the document following the root element must be well-formed.
	at saveFile_fla::MainTimeline/saveFile_fla::frame1()
	at runtime::ContentPlayer/loadInitialContent()
	at runtime::ContentPlayer/playRawContent()
	at runtime::ContentPlayer/playContent()
	at runtime::AppRunner/run()
	at global/runtime::ADLEntry()
Структура XML:
Код:
<?xml version="1.0" encoding="utf-8"?>
<root>
<xep>Hi!</xep>
</root>
Чт тут не так, не пойму.

Старый 12.11.2007, 21:17
aQuestion вне форума Посмотреть профиль Найти все сообщения от aQuestion
  № 2  
Ответить с цитированием
aQuestion
Banned
[+5 08.09.07]
[+4 17.01.08]
 
Аватар для aQuestion

Регистрация: Dec 2005
Сообщений: 556
а сколько bytesAvailable показало?

Старый 12.11.2007, 21:33
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 3  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
показало 233.

Старый 12.11.2007, 21:48
2morrowMan вне форума Посмотреть профиль Отправить личное сообщение для 2morrowMan Найти все сообщения от 2morrowMan
  № 4  
Ответить с цитированием
2morrowMan
 
Аватар для 2morrowMan

Регистрация: Aug 2007
Сообщений: 467
Попробуй без первой строки( <?xml version="1.0" encoding="utf-8"?> )

Старый 12.11.2007, 22:24
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 5  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
Убрал.
Код:
var file:File = File.userDirectory.resolvePath("AIR_Test/states.xml");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
var prefsXML:XML = XML(fileStream.readUTFBytes(1));
qwe.text=(fileStream.bytesAvailable).toString();
trace((fileStream.bytesAvailable).toString())
fileStream.close();
В текстовике выдаёт - 193.
А как XML вывести в текстовое поле, так?:
Код:
qwe.text=prefsXML.toString();

Старый 13.11.2007, 07:19
screamge вне форума Посмотреть профиль Отправить личное сообщение для screamge Посетить домашнюю страницу screamge Найти все сообщения от screamge
  № 6  
Ответить с цитированием
screamge
Ветеран форума
 
Аватар для screamge

Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
А почему ты XML «грузишь» через fileStream? В чём сокральный смысл?
__________________
Free-lance | Twitter | Me

Старый 13.11.2007, 10:36
vooparker вне форума Посмотреть профиль Отправить личное сообщение для vooparker Посетить домашнюю страницу vooparker Найти все сообщения от vooparker
  № 7  
Ответить с цитированием
vooparker
 
Аватар для vooparker

Регистрация: Apr 2006
Адрес: Kursk, Russia
Сообщений: 523
Отправить сообщение для vooparker с помощью ICQ
2Molecula:
по всей видимости у тебя в начале файле присутствует BOM, тут два варианта:
  1. пересохранить файл в формате utf-8 но без BOM;
  2. при чтении файла пропустить BOM - навскидку так:
Код:
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
fileStream.position = 3;
var prefsXML:XML = XML(fileStream.readUTFBytes(fileStream.bytesAvailable));
fileStream.close();
__________________
Челябинские флешеры настолько суровы, что пишут код во Flash IDE


Последний раз редактировалось vooparker; 13.11.2007 в 10:39.
Старый 13.11.2007, 14:22
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 8  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
2 screamge:
Не знаю, пример из Хелпа.
А как правильно его грузить?

2 vooparker
ЮТФ без БОМОВ был сохранен.
Попробую сделать, как предлагаете.

Старый 13.11.2007, 14:41
screamge вне форума Посмотреть профиль Отправить личное сообщение для screamge Посетить домашнюю страницу screamge Найти все сообщения от screamge
  № 9  
Ответить с цитированием
screamge
Ветеран форума
 
Аватар для screamge

Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
Ну класс XML никто ещё не отменял, а пример из хелпа скорее всего относится к чтению и записи.

Вот пример того что как считывать из файла и читать полученое.
http://tdotblog.info/?q=node/6
__________________
Free-lance | Twitter | Me

Старый 13.11.2007, 14:56
vooparker вне форума Посмотреть профиль Отправить личное сообщение для vooparker Посетить домашнюю страницу vooparker Найти все сообщения от vooparker
  № 10  
Ответить с цитированием
vooparker
 
Аватар для vooparker

Регистрация: Apr 2006
Адрес: Kursk, Russia
Сообщений: 523
Отправить сообщение для vooparker с помощью ICQ
2Molecula: открой файл в каком нить hex-редакторе и посмотри есть BOM или нет =)
__________________
Челябинские флешеры настолько суровы, что пишут код во Flash IDE

Создать новую тему Ответ Часовой пояс GMT +4, время: 09:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 09:39.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.