Lokalizálása dátum formátum leírók

szavazat
15

Mi a legjobb módja annak, hogy lokalizálja a dátum formátumát leíró?

Mint bárki olyan kultúra, amely nem használja a mm / dd / yyyy formátumban tudja, ez bosszantó, hogy meg kell adnia dátumokat ebben a formátumban. A .NET-keretrendszer rendelkezik néhány nagyon jó lokalizációs támogatás, így magától értetődő, hogy elemezni dátumok szerint a felhasználók számára a kultúra, de gyakran akarjuk is megjelenik egy hasznos tipp, hogy a megkívánt formában (különösen, hogy különbséget yy és yyyy ami felcserélhető A legtöbb kultúrában).

Mi a legjobb módja annak, hogy ezt oly módon, hogy van értelme a legtöbb felhasználó (pl dd / M / yyy zavaró, mert a változás esetén, valamint a kapcsolási egy-két betű).

A kérdést 03/08/2008 18:30
a forrás felhasználó
Más nyelveken...                            


7 válasz

szavazat
6

Csak az ISO-8601 . Ez egy nemzetközi szabvány.

Date and time (current at page generation) expressed according to ISO 8601:
Date:                           2014-07-05
Combined date and time in UTC:  2014-07-05T04:00:25+00:00
                                2014-07-05T04:00:25Z
Week:                           2014-W27
Date with week number:          2014-W27-6
Ordinal date:                   2014-186
Válaszolt 03/08/2008 19:18
a forrás felhasználó

szavazat
4

Egyet kell értenem az OP „rossz” dátumok tényleg jar az én DD / MM / YYYY nevelés és találok ISO 8601 dátumok és időpontok rendkívül könnyű vele dolgozni. Mert amint az általános igaza van, és engtech a nyilvánvaló válasz, amely nem igényel lokalizáció.

Úgy volt, hogy jelentse a születésnapját beviteli űrlapot veremtúlcsordulás hibaként, mert milyen sok a fájós hüvelykujj az, hogy a legtöbb a világon.

Válaszolt 04/08/2008 19:50
a forrás felhasználó

szavazat
2

Itt van a jelenlegi módszer. Valami javaslat?

Regex singleMToDoubleRegex = new Regex("(?<!m)m(?!m)");
Regex singleDToDoubleRegex = new Regex("(?<!d)d(?!d)");
CultureInfo currentCulture = CultureInfo.CurrentUICulture;

// If the culture is netural there is no date pattern to use, so use the default.
if (currentCulture.IsNeutralCulture)
{
    currentCulture = CultureInfo.InvariantCulture;
}

// Massage the format into a more general user friendly form.
string shortDatePattern = CultureInfo.CurrentUICulture.DateTimeFormat.ShortDatePattern.ToLower();
shortDatePattern = singleMToDoubleRegex.Replace(shortDatePattern, "mm");
shortDatePattern = singleDToDoubleRegex.Replace(shortDatePattern, "dd");
Válaszolt 03/08/2008 18:31
a forrás felhasználó

szavazat
1

A rövid forma kényelmes és segít elkerülni a helyesírási hibákat. Lokalizálni adott esetben, de biztos, hogy megjelenik a várt formátum (nem hagyják el a felhasználó vak). Adjon dátumválasztó vezérlés, mint opcionális szárnysegédje kitöltésével a területen.

Mint egy extra, on-the-fly elemzését és megjelenítését a dátumot hosszú forma segíthet is.

Válaszolt 04/08/2008 20:13
a forrás felhasználó

szavazat
1

Az a baj a nemzetközi szabványoknak, hogy nagyjából senki használja őket. Igyekszem, ahol tudok, de én kénytelen használni dd / mm / yyyy szinte mindenhol az életben, ami azt jelenti, én annyira megszoktam, hogy mindig tudatos folyamat, hogy az ISO-8601. Az emberek többsége, akik nem is próbálja használni az ISO-8601 ez még rosszabb. Ha lehet nemzetközivé, ahol, azt hiszem, ez egy nagy előnye.

Válaszolt 04/08/2008 09:14
a forrás felhasználó

szavazat
1

Mi lenne, így a méret (mm / dd / yyyy dd / mm / év), majd a kinyomtatott mai napon a felhasználó kultúrát. MSDN van egy cikk a formázás datetime az egyén kultúrája , a CultureInfo tárgy, ami hasznos lehet ebben. A kombináció a formátumot (ami a legtöbb ember tisztában van) együtt a jelenlegi dátum képviselt ebben a formátumban kell lennie elég egy nyom az a személy, hogyan kell írni a dátumot. (Is naptári kontroll azok számára, akik még mindig vidám kitalálni).

Válaszolt 03/08/2008 18:37
a forrás felhasználó

szavazat
0

A legjobb lehetőség : Azt helyett javasoljuk, hogy használja a szabványos dátumválasztóval.

Alternatív : minden alkalommal, amikor a tartalom a szerkesztési ellenőrzési változások, feldolgozni, és kijelző (külön szabályozás?) Hosszú dátumformátuma (azaz input „03/04/09” display „Bevitel: március 4, 2009” )

Válaszolt 19/09/2008 18:02
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more