webForumDet fria alternativet

svenska och engelska inställningar!

.NET

4 svar · 257 visningar · startad av theguru

Medlem sedan juli 2000411 inlägg
Frågan#1

Jag undar om det finns nåt sätt skriva ut datum i engelskt format
fast man har svenska intställningar?

Jag har till exempel en inställning där
Format(mrecTmp("FROMDATE").Value, "ddmmmyy")
ger resultatet
01okt03

Jag vill få ut 01oct03 fast jag har svenskt i regional settings
nån som vet om jag kan formatera om det så?

Medlem sedan juni 20022 599 inlägg
#2

Om vi ska vara väldigt generella och hantera även andra språkinställningar:

Private Declare Function GetDateFormat Lib "kernel32.dll" Alias "GetDateFormatA" (ByVal Locale As Long, ByVal dwFlags As Long, lpDate As SYSTEMTIME, ByVal lpFormat As Any, ByVal lpDateStr As String, ByVal cchDate As Long) As Long
 
Private Type SYSTEMTIME
   wYear As Integer
   wMonth As Integer
   wDayOfWeek As Integer
   wDay As Integer
   wHour As Integer
   wMinute As Integer
   wSecond As Integer
   wMilliseconds As Integer
End Type
 
Private Function minEgenDatumFormatering(LCID As Long, myDate As Date) As String
   Dim ST As SYSTEMTIME, FDate As String * 256, Retval As Long
    With ST
        .wDay = Day(myDate)
        .wMonth = Month(myDate)
        .wYear = Year(myDate)
        .wHour = Hour(myDate)
        .wMinute = Minute(myDate)
        .wSecond = Second(myDate)
    End With
   Retval = GetDateFormat(LCID, 0&, ST, "ddMMMyy", FDate, Len(FDate))
   minEgenDatumFormatering  = Left$(FDate, Retval)
End Function

Du anropar sedan med:

minEgenDatumFormatering(1033, mrecTmp("FROMDATE").Value)

(1003=Engelska, 1053=Svenska, 1035=Finska osv ..)

Medlem sedan juli 2000411 inlägg
#3

Tack jag provar detta är även tacksam om det finns eklare möjligheter ;-)

Medlem sedan juni 20022 599 inlägg
#4

Ja, självklart finns det enklare varianter.
Om du förutsätter att maskinen har normala svenska inställningar så kan du ju fulkoda:

s = Format(mrecTmp("FROMDATE").Value, "ddmmmyy")
If Mid(s, 3, 3) = "okt" Then Mid(s, 3, 3) = "oct"
' osv

Poängen med mitt exempel var att det inte förutsätter nåt om maskinen det körs på eller det språk du vill konvertera till.

Medlem sedan juli 2000411 inlägg
#5

funkar fint

260 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)