Sign in to follow this  
Followers 0
Rogue5099

Simple Date convertion

9 posts in this topic

I need to convert mm/dd/yyyy to yyyy/mm/dd.

I've looked all through the Date.au3 and all of that converts the date from what I need.

Is there a simple StringFormat I can do or something?

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Use the StringSplit function, with the slash as the delimiter, then rearrange the resulting array elements.

Edited by somdcomputerguy

- Bruce /*somdcomputerguy */  If you change the way you look at things, the things you look at change.

Share this post


Link to post
Share on other sites

Try this: :huh2:

$sDateYYYYMMDD = StringRegExpReplace($sDateMMDDYYYY, '(\d{2})/(\d{2})/(\d{4})', '$3/$1/$2')

Share this post


Link to post
Share on other sites

smartee you got there before me :huh2:


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

Ok, I see the concept but its not working... I also looked stringregexpreplace with the following example. Neither of these put out the Output that it should?

Local $sInput = 'some text1 12/31/2009 01:02:03 some text2' & @CRLF & _
        'some text3 02/28/2009 11:22:33 some text4'
    Local $sOutput = StringRegExpReplace($sInput, '(\d{2})/(\d{2})/(\d{4})', ' $2.$1.$3 ')

This is what I am trying to convert:

$Date = GUICtrlCreateDate("", 80, 72, 186, 21, $DTS_SHORTDATEFORMAT)
$sDateMMDDYYYY = GUICtrlRead($Date)
$sDateYYYYMMDD = StringRegExpReplace($sDateMMDDYYYY, '(\d{2})/(\d{2})/(\d{4})', '$3/$1/$2')

I know that GUICtrlCreateDate is defaulted to yyyy/mm/dd. Reason I have it set to mm/dd/yyyy is for matching purposes with other docs. I need it in yyyy/mm/dd to do a DateDiff()

Edited by rogue5099

Share this post


Link to post
Share on other sites

hi,

Regexp is a usable solution but in this case it is not needed. Try this:

#include <DateTimeConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$Form1 = GUICreate("Demo1", 266, 42)
$Date1 = GUICtrlCreateDate("2011/06/14 10:44:4", 8, 8, 121, 25, $WS_TABSTOP)
$Button1 = GUICtrlCreateButton("Check", 136, 8, 121, 25)
GUISetState(@SW_SHOW)

;Set the format of the DateTime control
GUICtrlSendMsg($Date1, 0x1032, 0, "yyyy/MM/dd")

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            MsgBox(64, "Demo1", GUICtrlRead($Date1))
    EndSwitch
WEnd

-smartee

Share this post


Link to post
Share on other sites

Does this work for you?

$datevar = StringSplit("mm/dd/yyyy", "/")
ConsoleWrite($datevar[3] & '/' & $datevar[1] & '/' & $datevar[2] & @LF)

- Bruce /*somdcomputerguy */  If you change the way you look at things, the things you look at change.

Share this post


Link to post
Share on other sites

Does this work for you?

$datevar = StringSplit("mm/dd/yyyy", "/")
ConsoleWrite($datevar[3] & '/' & $datevar[1] & '/' & $datevar[2] & @LF)

This is exactly what I could't figure out, I was just having a brain fart!

To smartee: Your method works also except it changes the whole format of the Ctrl that I set previously. I just needed to move the year to the end, store it to a variable, and then use it for datediff to calculate time worked.

By the way thanks for all the input. Even though I using a simple stringsplit doesn't mean that I won't use the other information later thanks a lot!

Share this post


Link to post
Share on other sites

Glad it works out for you. Good luck with your project.


- Bruce /*somdcomputerguy */  If you change the way you look at things, the things you look at change.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0