Ultracasual Posted March 29, 2012 Share Posted March 29, 2012 Hello members, I have attempted to search for what I'm looking for and I believe I'm wording it wrong or missing something obvious... I am trying to compare two UBound array variables for a small updating program. This is just not flowing that smoothly with my brain as far as syntax goes, I am very new to this and just scratching the surface so bear with me! Any constructive criticism would be splendid. Here is where I'm stuck: Local $getUpdates = FileRead(@UserProfileDir & '/desktop/updates_2.ini') Local $netData = StringSplit($getUpdates, "[)", 1) Local $localData = _FileListToArray(@UserProfileDir & '/desktop/updates/') For $i = 5 To UBound($netData) - 1 ;<=== reads $netData, identical to $localData in example* For $n = 1 To UBound($localData) - 1 ;<=== reads $localData MsgBox(0,"",'netData: ' & $netData[$i] & ' localData: ' & $localData[$n]) ;<=== should display both as being equal Next Next ;##### SAMPLE UPDATES FILE ##### ; misc1[)misc2[)misc3[)misc4[)file1[)file2[)file3[)file4[)file5[)file6[) Problem with above: - the first variable repeats 5 times through the complete array of the second - once proper, how can I compare the two and act upon a single changing variable in the array? ex: $netdata[1] <> $localData[1] during the split and an action is performed? Thank you =) I may have overcomplicated this... Link to comment Share on other sites More sharing options...
Ultracasual Posted March 29, 2012 Author Share Posted March 29, 2012 !!! IT was so simple. After a few hours of contemplation and reflections of a troubled past here is what I did for anyone wondering the same thing! (?) : Global $getUpdates = FileRead(@UserProfileDir & '/desktop/updates_2.ini') Global $netData = StringSplit($getUpdates, "[)", 1) Global $localData = _FileListToArray(@UserProfileDir & '/desktop/updates/') For $n = 1 To UBound($localData) - 1 Call("compare", $localData[$n]) Next Func compare($localData) For $i = 5 To UBound($netData) - 1 If $netData[$i] = $localData Then MsgBox(0,"",'netData: ' & $netData[$i] & ' localData: ' & $localData) EndIf Next EndFunc Link to comment Share on other sites More sharing options...
guinness Posted March 29, 2012 Share Posted March 29, 2012 Just so you know you could do it like this without the need for using Call. #include <File.au3> Example() Func Example() Local $aSplit = StringSplit(FileRead(@UserProfileDir & '/desktop/updates_2.ini'), "[)", 1) Local $aFileList = _FileListToArray(@UserProfileDir & '/desktop/updates/') If Not @error Then ; Check that an @error wasn't returned. For $i = 1 To $aFileList[0] Compare($aSplit, $aFileList[$i]) ; No need for Call, just use the function instead. Next EndIf EndFunc ;==>Example Func Compare($aArray, $sData) For $i = 5 To $aArray[0] If $aArray[$i] = $sData Then MsgBox(0, "", 'netData: ' & $aArray[$i] & ' localData: ' & $sData) EndIf Next EndFunc ;==>Compare Ultracasual 1 UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _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 parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
Ultracasual Posted March 29, 2012 Author Share Posted March 29, 2012 Just so you know you could do it like this without the need for using Call.Aha, great In your Example code is Ubound unnecessary for $aFileList? I won't miss call one bit...I wonder why it's still there? >< Link to comment Share on other sites More sharing options...
guinness Posted March 29, 2012 Share Posted March 29, 2012 Call has it's uses but in this example it isn't required. UBound should be used when you don't know the size of the Array, but as the 0th element in the Array returned by _FileListToArray is the number of items (so overall size if $aArray[0] + 1) you just use that instead. Ultracasual 1 UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _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 parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now