【问题标题】:How to convert C# date time variable to NSDate? [duplicate]如何将 C# 日期时间变量转换为 NSDate? [复制]
【发布时间】:2016-02-11 12:01:45
【问题描述】:

我有一个使用 Swift 编程的 iOS 应用程序。此应用程序从 WCF 服务(一种 JSON RESTful 服务)获取数据。我的问题是我的服务通过 WCF 服务以 JSON 格式向移动应用程序发送 C# 日期时间变量。

这是该服务发布的我的日期:

“发件人”:“/日期(1454956200000+0530)/”,

我想把它转换成 NSDate 格式。

【问题讨论】:

  • var responsedate: String = "/Date(1454956200000+0530)/" var takeDate: String = responsedate.componentsSeparatedByString("(")[1].componentsSeparatedByString(")")[0] var date: NSDate = NSDate(timeIntervalSince1970: (CDouble(takeDate)! / 1000)) 在date 你会得到实际的日期。此外,您可以使用 var dateFormatter 将其格式化为“MM/dd/yyyy”格式: NSDateFormatter = NSDateFormatter() dateFormatter.dateFormat = "MM/dd/yyyy" takeDate = dateFormatter.stringFromDate(date)
  • @Anbu.Karthik 逗号有问题它说 String(")",)[0] 但逗号后仍然有错误
  • 我不熟悉swift,把/Date()//Date(1454956200000+0530)/中删除,然后你继续你的工作,它会工作

标签: c# json swift wcf nsdate


【解决方案1】:

请检查以下代码:

let date : NSDate = NSDate(timeIntervalSince1970: 1454956200000)
let tz : NSTimeZone = NSTimeZone.defaultTimeZone(); //Default TimeZone. You can set any.
let seconds : Int = tz.secondsFromGMTForDate(date);
var date = NSDate(timeInterval:Double(seconds), sinceDate: date)

let dateForm = NSDateFormatter();

let locale = NSLocale.currentLocale();

dateForm.locale = locale
dateForm.dateFormat = "MMM dd"; //the formate in which u want to convert.

let strStartTime = dateForm.stringFromDate(date);

【讨论】:

  • 如何去掉加号部分?因为我把它作为一个字符串得到,我无法将它转换为双精度
  • 你可以用+号分割。通过使用拆分功能,您将获得数组并使用该数组中的第一个索引。
  • @Max :- 如果我能帮助你,请接受答案。
猜你喜欢
  • 2014-06-24
  • 2013-05-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-10
  • 1970-01-01
相关资源
最近更新 更多