#objective-c #ios #file-io #network-protocols
#objective-c #iOS #file-io #сетевые протоколы
Вопрос:
Мне нужно прочитать файл, который приходит, например:
\192.168.0.1FolderReadme.txt
как я могу прочитать этот файл из моего приложения в iPhone
Комментарии:
1. Я хотел бы сделать то же самое, что и в Windows, когда вы открываете путь \ ip
Ответ №1:
NSString *pathToTextFile;
NSError *readError;
NSString *fileData = [NSString stringWithContentsOfFile:pathToTextFile
encoding:NSUTF8StringEncoding
error:*readError]
NSLog(@"here is your file as string = %@",fileData);
Комментарии:
1. просто это? и файл pathToTextFile будет \192.168.0.1FolderReadme.txt ??
2. Попробуйте;) smb://имя сервера / имя папки / документ. Я предполагаю, что в вашем случае: smb://192.168.0.1/Folder/Readme.txt Но, как уже говорилось, я не уверен, что iOS поддерживает SMB напрямую. как насчет размещения его на вашем локальном веб-сервере (Apache или аналогичном)
Ответ №2:
Я думаю, что в этом случае вы можете использовать библиотеку, подобную ASIHTTP. Ссылка
Должна быть возможность загрузить файл в объект NSString, а затем сохранить этот объект в файл.
[nsStringObject writeToFile:pathToFile atomically:YES encoding:stringEncoding error:errorHandler];
Комментарии:
1. ASIHTTP работает хорошо… Библиотека HTTP, ему нужно получить доступ к своему файлу по протоколу SMB.
Ответ №3:
Как вы предлагаете в своем вопросе, вам необходимо получить доступ к вашему файлу по протоколу SMB (samba или Windows share). Я не думаю, что iOS поддерживает smb из коробки, однако некоторое время назад я наткнулся на библиотеку tango на github. Библиотека утверждает, что является реализацией SMB / CIFS для iOS, поэтому, я думаю, вы могли бы попробовать.