2016-01-25 1 views
0

Я получаю следующее сообщение об ошибке. Есть ли способ обойти это?Невозможно подстроить значение типа [NSURL]

я хочу, чтобы прочитать текстовый файл с URL

let requestURL: NSURL = NSURL(string: "http://www.xxxxx.com/file.txt")! 
let urlRequest: NSMutableURLRequest = NSMutableURLRequest(URL: requestURL) 

struct FactBook { 
    let factsArray = [requestURL] 

    //let factsArray = ["my text"] ---> is working 

    func randomFact() -> String { 
     let randomInt = Int(arc4random_uniform(UInt32(factsArray.count))) 

     //Error here... 
     return factsArray[randomInt] 
    } 
} 

спасибо.

+0

Какова фактическая ошибка, которую вы видите? – Fogmeister

+1

Вы создаете запрос, но когда-либо загружаете файл? –

+0

Чтобы получить * содержимое * удаленного текстового файла, вы должны * выполнить * загрузку где-нибудь ... – Moritz

ответ

1

randomFact Объявлено о возврате строки, factsArray является [NSURL], поэтому индексирование составляет NSURL. Измените тип функции для:

func randomFact() -> NSURL { 

и вы должны быть хорошо идти

Дальнейшие наблюдения:

  • Вы никогда не загружать содержимое в URL, так что не ясно, что даже это изменение действительно решает вашу проблему.
  • В его нынешнем виде есть только один элемент из factsArray, поэтому рандомизация кажется бессмысленной.
  • Кажется, вы действительно хотите, чтобы строки из URL-адреса, а затем возвращали случайный элемент возвращаемых строк.