将日期转换为具有不同日期格式ios的字符串?

时间:2016-08-05 07:06:50

标签: ios objective-c nsdate

我搜索一些堆栈淬火以将字符串转换为日期并且工作正常,但是我将我的字符串日期转换为NSDate而不是它返回我的nil。这是我的代码:

   NSString *dateStr = @"2016-07-29 09:05";
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyy-MM-ddTHH:mm:ss.SSSZ"];
    NSDate *date = [dateFormat dateFromString:dateStr];

我想将此日期转换为yyyy-MM-ddTHH:mm:ss.SSSZ此格式。

这里有什么问题?

4 个答案:

答案 0 :(得分:4)

喜欢

ionic.Platform.ready(function(){
    var url = "http://foo.bar/img/image.png";
    var filename = url.split("/").pop();
    var targetPath = cordova.file.externalRootDirectory + 'Pictures/' + filename;


    // This line print: "image.png"
    console.log(filename);

    // This line print: "file:///storage/emulated/0/Pictures/image.png"
    console.log(targetPath);

    $cordovaFileTransfer.download(url, targetPath, {}, true).then(function (result) {
            console.log(JSON.stringify(result));
            console.log('Save file on '+targetPath+' success!');

    }, function (error) {
            console.log("Error");
            // This returns me the error.
            console.log(JSON.stringify(error));

    }, function (progress) {
            console.log((progress.loaded / progress.total) * 100);

    });

}, false);

<强>输出

enter image description here

答案 1 :(得分:0)

您的问题是您的日期格式@"yyyy-MM-ddTHH:mm:ss.SSSZ"与日期字符串@"2016-07-29 09:05"不匹配。您需要使用不同的日期格式。

工作副本 - 目标C

NSString *dateStr = @"2016-07-29T09:05:00.00000Z";
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];
    NSDate *date = [dateFormat dateFromString:dateStr];

Swift 2.x

var dateformater = NSDateFormatter()
dateformater.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
var dateString:String = "2016-07-29T09:05:00.00000Z"
let date:NSDate = dateformater.dateFromString(dateString)!

print(date)

答案 2 :(得分:0)

只需将格式字样更改为

即可
<input type="file" accept=".jpeg,.jpg,.png,.pdf" />

之后,您可以将日期转换为以下格式:

NSString *dateStr = @"2016-07-29 09:05";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd HH:mm"];
NSDate *date = [dateFormat dateFromString:dateStr];

答案 3 :(得分:0)

试试这段代码。

NSString *dateStr = @"2016-07-29 09:05";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd hh:mm"];
NSDate *date = [dateFormat dateFromString:dateStr];
NSLog(@"the date  is %@",date);

NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSString *currentDate = [dateFormatter stringFromDate:date];
NSDate *finaldate = [dateFormatter dateFromString:currentDate];
NSLog(@"CurrentDate:%@", finaldate);