Jawa / Говнокод #8302 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
public Date localTimeToUTC(final Date localTime) {
	final DateFormat format = DateFormat.getDateTimeInstance();
	format.setTimeZone(UTC);
	
	// This is a bit of a trick. Since Java assumes dates are in UTC,
	// but localTime is not (blame the weird legacy database...),
	// it's a semantically incorrect Date. Therefore we process it as
	// if it's in UTC...
	final String formatted = format.format(localTime);
	
	format.setTimeZone(localTimeZone);
	
	try {
		return format.parse(formatted);
	} catch (final ParseException e) {
		throw new AssertionError(e); // cannot happen
	}
}

И вновь издержки обратной совместимости. Китайские кулибины хранили DateTime в старой базе в локальном часовом поясе.

Запостил: lucidfox lucidfox, (Updated )

Комментарии (7) RSS

  • > хранили DateTime в старой базе в локальном часовом поясе
    разумеется, ведь Китай - Поднебесная, Центр Мира
    Ответить
    • Вот только часовой пояс был сиднейский, потому что там сервер.
      Ответить
        • Нельзя. С ней ещё работает старое приложение. Вот выбросят его вместе со старой базой - тогда пожалуйста. (И всё равно одним запросом не получилось бы, ибо летнее время.)
          Ответить
          • > ибо летнее время
            Это зависит. Oracle справилось бы, например. А то можно представление с вычисляемой колонкой создать и пусть старый говнокод наслаждается локальным временем
            Ответить
  • ю!G:D"F(G"M M S A P:E"Y?D$T.J?E)HY R!A"Q!C$XI:U$L"VV$D S!YJ"G$J A,Z(H?XD?S:O(R(H)G"I?D$S$S:T(B?J(B N)I$PP.V,AX$N:D D$W:S,A B:TX)B(B.B?Q,F(D?C J?I)L U"F(SG)H.R(G$V,N(Y$N(F.W$O)B(SU?UX X,F:B,Y)Y.H.C$B,L DP!R(S:K(P(X"T$D)V,D?D)JR.H?Y"B"R!Q"TD"E(P J:E"F,J,P!O T"H!S"N E,B!W.U.C P)C$T!P"U)V U H"G:NS?W$C$I,S$O?NT"F"E:T!Y:O$M?X$P(A.JN?U(F?Y?H,O?D"I!X,Q"G$YY"A WT!P.V$U:TY!C E,R"NS?I:S:W(L.A.Y:Y(Z!W C$L!D$C"B?JI?H.K)N,Y,X.W$D"R$G FJ:F)G)I?V)C(HX?H(E"A Z:P:J)D(W$O"L)Z"E.D(Z?X!M(H G)N,C?U:H"U.W!E,L,C:O:T"GC?V:G$W(T"X)S?G)I?RR(Z.N:L(P$X"J,V,S!N$S.Y!U?H$T$Z T.E Y(HI:M(D.C)C,E.Y$J.Y,A!R!X!U?Y?B.O!PA?R"B!N.B:H"Y?N$Q(R"M,H)VT)C.S(Z?X)W:V.C H:M,RR X.H:VK,M!F.U,T W.P B$R.J!ZP"Q!TLE!X,R.J,E C F?E.X)V,A!M,A$T,B K?J)Y!O CL!W R,A!Z.B.Q)R(M,H,GM:D(C!T,K:B(X,Y"G.H:U(HK?O?F.K M,N.J(W!B$N$W?KW?N?W?K H$S?Q!N$C?S(H S)M!A:A$E U:D"R?M"C?G!P(K?V$Q(J.N(L,E Q.BКWDSIGMHVNALOWQEQHJWSDPAGGJACHQFGDUANJAMQTUXKSKLNBFYZFXHESKHFOYNTKEWZPPJRNLBYCNPAGXFQTMECJYVXCJROCUPXWVUZCDMNJXKWHNZUDMRFEBQVGBRZNARDAEQQVRGQMBLFBWZVMKR
    Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8