2010-04-22 3 views
2

Мне было интересно, можно ли записать файл, а не в локальную систему, а на подключенный сервер или другой сетевой путь.Можно ли сохранять файлы на сетевой путь?

Должен ли я использовать внешний интерфейс для этого, или я могу доверить это инфраструктуре AIR?

Я уверен, что у AIR есть определенные меры предосторожности для предотвращения этого.

ответ

1

Какой сетевой путь? SMB, FTP, HTTP, WebDav, ..?

Если он установлен на вашем локальном ПК, вы должны иметь возможность записывать его так же, как писать на любой другой диск или файловую систему.

1

записать новый файл в папку на сетевом диске в OSX:

var targetDir:File = new File("/Volumes/Data/SomeFolder"); 
targetDir.createDirectory(); // ensure directory exists, create if not 
var targetFile:File = targetDir.resolvePath("newFile.ext"); 
var fileStream:FileStream = new FileStream(); 
try { 
    fileStream.open(targetFile, FileMode.WRITE); 
    fileStream.writeBytes(byteArray); // or what/however you want to write 
    fileStream.close(); 
} catch (e:Error) { 
    trace(e); 
} 

я предполагаю, что для Windows, вы бы просто поменять путь сетевого диска в первой строке. вам не следует указывать протокол (например, файл: //, smb: // и т. д.); формат параметра для конструктора файлов - это собственный путь (как это было бы в оболочке терминала/команды).

Чтобы получить путь в OSX, используйте Finder для перехода к целевой сетевой папке. начните перетаскивание папки в другое место, нажмите apple + space, чтобы открыть Spotlight, и продолжите перетаскивание папки в Spotlight. поочередно, откройте окно терминала и перетащите папку в окно терминала.

+0

'new File ('\\ networkpath \ file.png')' выдает 'IOErrorEvent: URL-адрес не найден ', но копия в любом случае выполнена. –

Смежные вопросы