2016-04-28 14 views
0

Я хочу перенести файл png с рабочего стола Mac на установленный общий доступ к файлам Windows. Кажется, я не могу заставить удаленный путь работать с кодом, который я использую.Objective C - записать файл png в удаленный общий файл

NSFileManager *filemgr; 
filemgr = [NSFileManager defaultManager]; 

if ([filemgr copyItemAtPath: stringFilePath toPath: @"/NameOfFileShare/Path/To/Folder/FileName.png" error: NULL] == YES) 
NSLog (@"Copy successful"); 
else 
NSLog (@"Copy failed"); 

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

+1

У меня нет доступа к моему Mac прямо сейчас, но в моей памяти, которая может быть неправильной, сетевые папки установленных окон монтируются под /Volumes/NameofSharedResource/RestOfPath/foo.png, поэтому попробуйте получить доступ из/Объемы/... –

+0

Мог присяги я использовал/Объемы в моих многочисленных перестановках. Должно было иметь что-то еще неправильное в то время. Спасибо что подметил это. Это заставило меня пересмотреть его, и теперь он работает. – FlameCoder

+0

Отлично. Счастлив, я мог бы помочь. Для других, чтобы иметь возможность использовать ответ, я отправлю фактический ответ на ваш вопрос. :) –

ответ

1

Mac OS (OS X) загружает драйверы сети под /Volumes рядом с другими драйверами. Поэтому ваш код должен выглядеть следующим образом:

NSFileManager *filemgr; 
filemgr = [NSFileManager defaultManager]; 

if ([filemgr copyItemAtPath: stringFilePath toPath: @"/Volumes/NameOfFileShare/Path/To/Folder/FileName.png" error: NULL] == YES) 
NSLog (@"Copy successful"); 
else 
NSLog (@"Copy failed"); 

Обратите внимание на путь, который начинается с /Volumes

Это должно работать.