Swift开发

Swift中的异常处理

2017-11-28  本文已影响19人  追逐_chase
Swift.png
异常处理
do {

 try  JSONSerialization.jsonObject(with:jsonData as Data, options: .mutableContainer

}catch{
// catch 捕捉异常  系统会提供一个 临时的常量 error
print(error);

}
///异常

///枚举 Error 就是告诉编译器,这个枚举。可以充当具体的异常值
enum FileError:Error {
    
    case notExists
    case notFormat
    case notContent
    
    
}

//函数
func readFile(path:String) throws ->String {
    
    //1.判断文件路径是否存在
    
    let isExsits =  FileManager.default.fileExists(atPath: path);
    
    if !isExsits {
        //如果想要成为,异常值,必须要遵循一个协议Error
       //如果有错误 抛出异常 终止代码执行
        throw FileError.notExists;
    }
    
    //2.读取文件
    
    var content:String = "";
    do {
        content = try String(contentsOfFile: path);
    }catch {
       //捕捉到异常
        throw FileError.notFormat;
        
    }
    
    
    if content.lengthOfBytes(using: String.Encoding.utf8) == 0 {
        throw FileError.notContent;
    }
    
    
    return content;
}



上一篇下一篇

猜你喜欢

热点阅读