رائع: لا يتم حساب التواريخ بشكل صحيح؟ باستخدام TimeCategory

StackOverflow https://stackoverflow.com/questions/4231189

  •  26-09-2019
  •  | 
  •  

سؤال

هل يمكن لأي شخص أن يخبرني لماذا لا يتم حسابها بشكل صحيح. أحاول إضافة ثانية واحدة إلى ذلك الوقت ويبدو أنه يضيف 60 ميلي ثانية عند تطبيق التنسيق؟

    import java.text.*
    import java.util.*
    import groovy.time.TimeCategory

    def xmlSlurper = new groovy.util.XmlSlurper()  

    // Get the previous total for number of journals
    def journalCountProp = testRunner.testCase.getTestStepByName("Properties")
    def journalCountTotal = journalCountProp.getPropertyValue( "journalCount" )
    log.info " 1. Previous JournalCount from last run: "+journalCountTotal

    def lastDateProp = testRunner.testCase.getTestStepByName("Properties")
    def lastDateHolder = lastDateProp.getPropertyValue( "journalQueryDate" )
    log.info " 2. Previous lastDate from last run: "+lastDateHolder 

    // Get the response for a given timeline
    def response = xmlSlurper.parseText(context.expand('${GET Journal using JournalDate#Response}'));
    def currentJournalCount = response.Journals.Journal.size()
    log.info " 3. Number of Journals in this Run: "+currentJournalCount

    //Getting the date from the last Journal (including an offset as the array count starts at 0)
    def lastDate = response.Journals.Journal[currentJournalCount-1].CreatedDateUTC
    log.info " 4. CreatedDate from last journal in this response: "+lastDate

    //log.info response.Journals.Journal[currentJournalCount-1].CreatedDateUTC

    def newdate = Date.parse("yyyy-MM-dd'T'HH:mm:ss.mmm",lastDate.toString())
    log.info "dateBeforeChange: "+newdate.format("yyyy-MM-dd'T'HH:mm:ss.mmm")
    use(TimeCategory){
     newdate = newdate+1.seconds
    }

    log.info "date After Change: "+newdate.format("yyyy-MM-dd'T'hh:mm:ss.mmm")
    log.info " 5. "+newdate.format("yyyy-MM-dd'T'HH:ss:mmm")

انتاج:

تم إنشاءها من مجلة الأخيرة في هذا الرد: 2007-03-29T23: 19: 52.073
DateBeforechange: 2007-03-30T00: 13: 52.013
التاريخ بعد التغيير: 2007-03-30T12: 13: 53.013

لا أستطيع معرفة ذلك؟ !!

هتاف ، - ريتشارد

هل كانت مفيدة؟

المحلول

HH تعني "ساعة في اليوم (0-23)" ، في حين hh تعني "ساعة في AM/PM (1-12)".
انظر SimpleDateFormat apidoc للرجوع (SimpleDateFormat يستخدم تحت الغطاء).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top