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

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

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

Регистрация: Jul 2010
Адрес: Москва
Сообщений: 256
Записей в блоге: 1
По умолчанию Некие вопросы по работе со структурой File

Дамы и господа !

Если можно, некие вопросы по работе со структурой File. Чего-то она у меня в упор не идет...

Согласно инструкциям (везде однотипным, все говорят, что нужно работать с AIR), запускаю свой Adobe Flash Professional CS5, новый файл, выбираю "создать Adobe AIR 2", далее его как-то называю... Далее пишу, согласно тем же инструкциям, код:


Код AS3:
import flash.filesystem;
var file = new File("zzz.txt");
trace(3, "file.exists = " + file.exists); // true
на что весьма забавная реакция системы:

Цитата:
Scene 1, Layer 'Layer 1', Frame 1, Line 1 1172: Definition flash:filesystem could not be found.
В таком случае обилие наивный вопросов: как быть? Попытаться работать, может быть, не с CS5, а с другими версиями?

Да, генеральная задача: удаление файлов и/или их содержимого...


С уважением
Влад

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

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Вы пытаетесь импортировать пакет.
Для того, чтобы импортировать его содержимое, нужно писать так:
Код AS3:
import flash.filesystem.*;

Старый 27.01.2014, 03:02
wlad вне форума Посмотреть профиль Отправить личное сообщение для wlad Найти все сообщения от wlad
  № 3  
Ответить с цитированием
wlad

Регистрация: Jul 2010
Адрес: Москва
Сообщений: 256
Записей в блоге: 1
Спасибо... Теперь...

Путь к текущему каталогу:
Код AS3:
var appDir:File = File.applicationDirectory;
trace(24, appDir.nativePath); // полное отсутствие проблем
а вот путь к файлу

Код AS3:
var s:String = ""; s = appDir.nativePath + "\\zzz.txt";
trace(27, " s = " + s); // дает то, что надо - путь к нужному каталогу в этой переменной прописывается хорошо, zzz.txt - абстрактный пробный файл, который хочу впоследствии удалить...
var file3 =  new File(s);
trace(28, "file3.exists = " + file3.exists);
Увы... здесь файл в упор не замечается... постоянно выдается false вместо долгожданного true...

Сейчас попробую создать внутри этого каталога еще один и поработать с ним...

Добавлено через 39 минут
Чуть повеселей дело при работе каталогами..

Код AS3:
var appDir:File = File.applicationDirectory; // если создать директорию dir_exp, то 
var s_2:String = ""; s_2 = appDir.nativePath + "\\dir_exp";
var appDir_2:File = new File(s_2);
trace(35, "appDir_2.exists = " + appDir_2.exists); // выдается true..
теперь... для того, чтобы ее убить, я попытался было

Код AS3:
 var directory:File = File.applicationDirectory.resolvePath(s_2);
 if (appDir_2.exists == true) directory.deleteDirectory;
Результата не добился...

Старый 27.01.2014, 12:38
Astraport вне форума Посмотреть профиль Отправить личное сообщение для Astraport Найти все сообщения от Astraport
  № 4  
Ответить с цитированием
Astraport
 
Аватар для Astraport

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
Вы удаляете файл в applicationDirectory, для этого нужно иметь права админа. Работайте с хранилищем (юзерская директория). Копируйте туда все файлы на старте приложения и потом делайте что хотите.
__________________
In Code We Trust

Старый 27.01.2014, 13:34
wlad вне форума Посмотреть профиль Отправить личное сообщение для wlad Найти все сообщения от wlad
  № 5  
Ответить с цитированием
wlad

Регистрация: Jul 2010
Адрес: Москва
Сообщений: 256
Записей в блоге: 1
Пардон, а удаление из текущей директории не предусмотрено? Если так, то одна из недоработок компании Adobe?

Старый 27.01.2014, 13:43
Astraport вне форума Посмотреть профиль Отправить личное сообщение для Astraport Найти все сообщения от Astraport
  № 6  
Ответить с цитированием
Astraport
 
Аватар для Astraport

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
Цитата:
Если так, то одна из недоработок компании Adobe?
При чем здесь Adobe? Попробуйте удалить без привелегий админа файл из программной папки через Проводник в Винде.
__________________
In Code We Trust

Старый 27.01.2014, 14:45
wlad вне форума Посмотреть профиль Отправить личное сообщение для wlad Найти все сообщения от wlad
  № 7  
Ответить с цитированием
wlad

Регистрация: Jul 2010
Адрес: Москва
Сообщений: 256
Записей в блоге: 1
Дорогой Astraport !

Мне очень неловко, но так, о каком-либо ручном удалении вопрос не стоит... Вопрос, а вместе с ним и задание стоят так: создать нечто, позволяющее программное удаление файлов и директорий.

Старый 27.01.2014, 15:46
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 8  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Сдается мне, конструкция вида
Код AS3:
var file:File = new File(path);
не создает файл в файловой системе, т.е. никаких манипуляций с диском не происходит.
Объект File - это объект, который может быть связан с реальным файлом, если он лежит по указанному пути, а может быть и не связан с файлом, если такого файла нет. Свойство exists призвано избежать подобных недоразумений.
Создать файл "с нуля" на диске можно при помощи FileStream и его методов. Или через FileReference.

А вот директории создаются таки через File#createDirectory(). И удаляются файлы и директории все-таки через объект File (File#deleteDirectory(), File#deleteFile()).
Ну, и операции копирования/перемещения, свойства (creation time и т.п.) так же доступны через объект File.
Вобщем, есть своего рода изюм.
В этом есть логика, нужно разобраться в вопросе. И да, о правах пользователя в файловой системе тоже не следует забывать.

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

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
wlad, вот с этими материалами ознакомьтесь:
http://help.adobe.com/ru_RU/as3/dev/...2-79166A98A085
http://help.adobe.com/ru_RU/FlashPla...stem/File.html
__________________
In Code We Trust

Старый 27.01.2014, 17:01
wlad вне форума Посмотреть профиль Отправить личное сообщение для wlad Найти все сообщения от wlad
  № 10  
Ответить с цитированием
wlad

Регистрация: Jul 2010
Адрес: Москва
Сообщений: 256
Записей в блоге: 1
так-с... В течение 72-96 часов - больно неделька напряженная...

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

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

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


 


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


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