2017-02-09 22 views
0

Я пытаюсь получить значение временной метки из webservice в C#, а затем сопоставить его с Java. Тем не менее, я получаю другое значение в миллисекундовой части. Существует определенный формат метки времени в веб-службе, поэтому мне нужно преобразовать фактическую метку времени, которую я получаю, и преобразовать ее в тип строки, чтобы иметь возможность получить правильный формат.Значение метки времени в C# отличается от java

Это отметка времени с помощью веб-службы

2017-02-09 P14: 01: 53,1719701 + 8

Мой пример кода в Java

Date webServiceTimeStamp=service.getApplication().getTimestamp().getTime(); 

    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd aHH:mm:ss.SSSSSSSX"); 
    String formattedTimeStamp = formatter.format(webServiceTimeStamp); 
    if(formattedTimeStamp.contains("AM")) 
    { 
     formattedTimeStamp = formattedTimeStamp.replace("AM", "A"); 
    }else{ 

      formattedTimeStamp = formattedTimeStamp.replace("PM", "P"); 
    } 
    formattedTimeStamp = formattedTimeStamp.replace("+0", "+"); 


    System.out.println("timestamp => " + formattedTimeStamp); 

Выход

timestamp => 201 7-02-09 P14: 01: 53.0000172 + 8

Есть ли способ получить то же значение миллисекунды с веб-службы? Может ли кто-нибудь помочь мне в том, как я могу получить такое же значение, чтобы я смог сопоставить его с моим кодом. Спасибо огромное!

+0

Это поможет, если вы добавите форматтер, который вы используете, а также ... Похоже, что милисекунды из службы рассматриваются как наносекунды вместо этого. –

+0

Привет, я только что отредактировал код и добавил форматировщик – jeramay10

+0

, смогу ли я получить значение nano-seconds без обновления чего-либо в веб-службе? – jeramay10

ответ

1

миллисекунды только 3 цифры точности, поэтому использование SSSSSSS всегда будет с планшетом милисекунд с нулями впереди ...

Если вы действительно хотите 6 цифр (наносекунды), используя только точность миллисекунды, используйте этот формат вместо:

new SimpleDateFormat("yyyy-MM-dd aHH:mm:ss.SSS'000'X") 
+1

Вы имели в виду 'SSS', а не' SSSS', правильно? – Andreas

+0

Спасибо, только что увидели ваш комментарий сразу после того, как я предложил ответ;) –

+0

@FrederikHeremans все еще не получает точного значения, ** webservice: ** _2017-02-09 P15: 16: 06.8347887 + 8_, ** formattedtimestamp ** * *: ** _2017-02-09 P15: 16: 06.835000 + 8_ – jeramay10