(作业)Date、String、文件、URL
来源:互联网 发布:和重庆网络广播电视台 编辑:程序博客网 时间:2024/06/05 16:58
又是一周一次的作业时间,惯例先上图:
这次的要求就比较简单了,就是一些基本系统定义类或结构体的应用,代码如下:
// MARK: question1/// 将指定的日期根据时区转换成相应的格式////// - Parameters:/// - date: 日期与时间/// - zone: 时区(东区为正数,西区为负数)/// - Returns: 返回指定格式的字符串func getDate(date: Date, zone: Int = 0) -> String { let formatter = DateFormatter() //实例化格式化类 formatter.dateFormat = "yyyy年MM月dd日EEEE aa KK:mm" //指定格式化的格式 formatter.locale = Locale.current //设置当前位置,可以将对应的星期数和12小时制的上下午设置为中文 if zone >= 0 { //当传入的为正数时,在东半区 formatter.timeZone = TimeZone(abbreviation: "UTC+\(zone):00") } else { //当传入的为负数时,在西半区 formatter.timeZone = TimeZone(abbreviation: "UTC\(zone):00") } let dateString = formatter.string(from: now) //将传入的日期格式化为字符串 return dateString}let now = Date() //获取当前时间日期let beijing = getDate(date: now, zone: +8) //获取当前北京的时间print("北京: \(beijing)") //输出: 北京: 2017年09月19日星期二 下午 10:56let tokyo = getDate(date: now, zone: 9) //获取当前东京的时间print("东京: \(tokyo)") //输出: 东京: 2017年09月19日星期二 下午 11:56let newYork = getDate(date: now, zone: -5) //获取当前纽约的时间print("纽约: \(newYork)") //输出: 纽约: 2017年09月19日星期二 上午 09:56let london = getDate(date: now) ////获取当前伦敦的时间print("伦敦: \(london)") //输出: 伦敦: 2017年09月19日星期二 下午 02:56// MARK: question2let parentString = "Swift is a powerful and intuitive programming language for iOS, OS X, tvOS, and watchOS." //删除指定子串之前的字符串let subString = parentString.replacingOccurrences(of: "OS", with: "") //用""来替换子串,相当于删除print(subString) //输出: Swift is a powerful and intuitive programming language for i, X, tv, and watch.// MARK: question3let dic = ["date": ["beijing": beijing, "tokyo": tokyo, "newYork": newYork, "london": london], "string": subString] as AnyObject //将字典转换为任意类型,方便后面写入文件let defaultDoc = FileManager.default //获取默认工作路径//获取工作路径下的Document文件夹if var path = defaultDoc.urls(for: .documentDirectory, in: .userDomainMask).first?.path { path.append("/test.txt") //在文件夹路径下增加一个test.txt print(dic.write(toFile: path, atomically: true)) //新建上面指定的文件,并将数据写入(输出: true)}// MARK: question4let image = try Data(contentsOf: URL(string: "https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png")!) //通过指定的url获取图片,并转换为二进制数据if var url = defaultDoc.urls(for: .documentDirectory, in: .userDomainMask).first { url.appendPathComponent("image.png") try image.write(to: url) //将转换后的二进制数据存储为png图片}// MARK: question5let url = URL(string: "http://www.weather.com.cn/data/sk/101110101.html")! //api的路径//let str = try String(contentsOf: url)//print(str) //显示json数据内容let data = try Data(contentsOf: url) //将json转换为二进制数据let json = try JSONSerialization.jsonObject(with: data, options: .allowFragments) //序列化json//解析json数据if let dic = json as? [String: Any] { if let weather = dic["weatherinfo"] as? [String: Any] { let city = weather["city"]! let temp = weather["temp"]! let wd = weather["WD"]! let ws = weather["WS"]! print("城市: \(city), 温度: \(temp), 风向: \(wd), 风力: \(ws)") //输出: 城市: 西安, 温度: 20, 风向: 西南风, 风力: 1级 }}
阅读全文
0 0
- (作业)Date、String、文件、URL
- Date <-> String
- String & Date
- javase Date--->string ||String --->Date
- java作业Date类
- Time Date 作业
- Time Date 作业
- date 转成String ,String 转成date
- javascript date 转 string ,string 转 date
- String 转换 Date 和Date转换String
- Date转String / String 转Date
- Date转String String 转Date
- 时间转换String-date Date-String
- String转Date、Date转String以及Date比较
- 将String类型Date
- String转为Date
- long string date转换
- Date long String 转换
- 无法将grub-eif-amd64-signed软件包安装到/target/中
- 软件体系结构实现
- HDU
- MySQL获取数据库每个表的行数
- 《C++ Primer》读书笔记第九章-2-顺序容器操作 And vector增长问题
- (作业)Date、String、文件、URL
- 2017-2018SDUT个人训练赛第四场总结:我们愿意用更大的努力去换取更大的成功
- 系统性能优化总结—数据库设计
- 【笔记】《WebGL编程指南》学习-第2章WebGL入门(3-画一个点-版本1))
- Android RuntimePermissions运行时权限:单个运行时权限申请简例
- 21. Merge Two Sorted Lists。
- 整理Python find()、Python index()和Python List index()
- HDU 4614 Vases and Flowers
- spring的简单配置使用