2016-05-17 153 views
3

有沒有辦法將swift中NSError類型的錯誤轉換爲字符串?Swift將NSError轉換爲字符串

例如,對於這樣的事情:

do { 
    try response.status(.OK).send(fileName: "html/index.html") 
} catch { 
    response.status(.FAIL).send(error.CONVERT_TO_STRING) 
} 

。發送()預計將在默認的字符串。

+1

你的意思是捕捉拋出的錯誤(在Swift中)或http錯誤? – Alexander

+0

我澄清了我的問題。 – eclipse

+1

不,你沒有。什麼樣的事情是錯誤?一個枚舉?一個NSError?不要讓我們猜測。 – matt

回答

13

如果您的錯誤類型爲NSError,則可以使用error.localizedDescription來獲取字符串。

+2

這是真的,但是Swift catch塊中的錯誤可能不是'NSError'。在這種情況下不清楚它是否是。 –

+0

我的假設是swift中的每個錯誤都需要實現ErrorType協議。有沒有辦法將這種類型的對象轉換爲字符串。 – eclipse

+0

不是直接的,你必須知道更多關於將其轉換爲字符串的錯誤。如果它是一些實現了ErrorType協議的枚舉,那麼將其轉換爲NSError將會非常無用。 –