objective-c - 来自旧数据库的 csv 转储的 nsdate
问题描述
我有一个来自 2013 年自制应用程序的旧文件 - sql lite
我想恢复数据,但由于旧的 Xcode 项目很旧,我正在重新创建一个功能较少的新应用程序,因为它们不再需要。
我可以打开旧的 sql lite 数据库并将表导出为 cvs 文件,我正在尝试将其导入新应用程序。
通常工作但我坚持日期信息。在旧应用程序中,这是一个 NSDate,而在新应用程序中,它也是一个 NSDate。在 csv 文件中它只是一个字符串 - 一个例子是
371401200
我不知道如何将其添加为日期,因为它不是“正常”日期字符串,因此字符串中的日期无法正常工作。
我怎样才能引入这些数据?
(业余爱好者编写的应用程序仅供家庭使用)
解决方案
该字符串很可能是 UNIX 时间戳(从 1970 年 1 月 1 日开始)。
你可以NSDate
从字符串中得到一个
NSString *timeString = @"371401200";
NSTimeInterval timeStamp = timeString.doubleValue;
NSDate *date = [NSDate dateWithTimeIntervalSince1970:timeStamp];
NSLog(@"%@", date); // 1981-10-08 15:00:00 +0000
或者它可能基于 Apple 的参考日期(从 2001 年 1 月 1 日开始)
NSString *timeString = @"371401200";
NSTimeInterval timeStamp = timeString.doubleValue;
NSDate *date = [NSDate dateWithTimeIntervalSinceReferenceDate:timeStamp];
NSLog(@"%@", date); // 2012-10-08 15:00:00 +0000
推荐阅读
- c++ - 期货和线程,运算符 +
- mysql - MYSQL 中的 Alter Column 语句有什么问题?
- git - 如何从 master 的另一个功能分支 rebase 或合并分支
- javascript - 为什么在使用 jquery 的 Firefox 中放大和缩小功能无法正常工作?
- rspec - Capybara wit RSpec 无法找到未禁用的字段“Nombre del cliente”
- node.js - 尝试在猫鼬中使用 $near 时获取并清空数组
- bash - 如何计算Makefile中文件的行数?
- python - Python从HTML页面读取完整表格
- python - 具有稀疏矩阵的 sklearn.svm.SVR 会产生错误
- yii2 - Cloudflare、负载均衡器和 Yii 2