Сравните две массивы записей файлов .ini -- arrays поле с участием autoit пол Связанный проблема

Compare two arrays of .ini file entries


-1
vote

проблема

русский

У меня есть один файл .ini, как показано ниже:

 <код> [Step] A=DONE B=DONE C=DONE D=DONE   

Мне нужно получить <код> [Step] раздел и положить его в массив. Ниже есть то, что я делаю:

 <код> $iniSection_Step = "Step" $PrevStep = "" Local $Prev = IniReadSection($iniPath_LogFile, $iniSection_Step)  For $i = 1 To $Prev[0][0]     $PrevStep = $PrevStep &"|"& $Prev[$i][0] Next Global $PrevArray = StringSplit($PrevStep,"|",1)   

<код> _ArrayDisplay() Результат:

 <код> Row|Col 0  [0]|5  [1]|  [2]|A  [3]|B  [4]|C  [5]|D   

Теперь мне нужно сравнить массив с другим, и если элемент существует в обоих, он увеличит один массив.

 <код> For $j = 0 To UBound($array_StepComplete) - 1     if StringInStr($array_StepComplete[$j],$PrevArray[$i]) Then         GUICtrlSetData($Input_PresentStep,$array_StepComplete[$j+1])     EndIf Next   

Это увеличит один массив, но если кто-то удаляет содержимое файла .ini, как показано ниже:

 <код>   [Step]   A=DONE    C=DONE   D=DONE   

Код будет увеличивать один массив, но он не проверяет, существует ли элемент.

Английский оригинал

I have one .ini file as below:

[Step] A=DONE B=DONE C=DONE D=DONE 

I need to get the [Step] section and put it in an array . Below is what I do:

$iniSection_Step = "Step" $PrevStep = "" Local $Prev = IniReadSection($iniPath_LogFile, $iniSection_Step)  For $i = 1 To $Prev[0][0]     $PrevStep = $PrevStep &"|"& $Prev[$i][0] Next Global $PrevArray = StringSplit($PrevStep,"|",1) 

The _ArrayDisplay() result:

Row|Col 0  [0]|5  [1]|  [2]|A  [3]|B  [4]|C  [5]|D 

Now I need to compare the array with another and if an element exists in both, it will increment one array.

For $j = 0 To UBound($array_StepComplete) - 1     if StringInStr($array_StepComplete[$j],$PrevArray[$i]) Then         GUICtrlSetData($Input_PresentStep,$array_StepComplete[$j+1])     EndIf Next 

This will increment one array but if someone deletes the content of .ini file as below:

  [Step]   A=DONE    C=DONE   D=DONE 

The code will increment one array but it does not check if the element exists.

</div
     

Список ответов

0
 
vote
vote
Лучший ответ
 

Что я понял: <код> Compare two arrays and do some action if two elements match.

Сначала вам нужно расчистить вещи. Что вы хотите сравнить? очевидно имеет значение .. поэтому я решил <крепко> петлю на динамическом массиве Во-первых, и если я нашел соответствующую пару, я также выходя из цикла по причине ресурсов ...

 <код> Local $aSteps = IniReadSection("Steps.ini", "Step") If @error Then     ConsoleWrite("#1 An error occured while reading the 'Steps.ini' file." & @CRLF)     Exit EndIf  Local $aAllsteps = IniReadSection("Steps.ini", "Allsteps") If @error Then     ConsoleWrite("#2 An error occured while reading the 'Steps.ini' file." & @CRLF)     Exit EndIf  ; loop on the dynamical array first For $i = 1 To $aSteps[0][0]     ; then loop on the static array for each element     For $y = 1 To $aAllsteps[0][0]         ; check if the elements match         If $aSteps[$i][0] = $aAllsteps[$y][0] Then             ; if the element match print out and exit loop for resource reason             ConsoleWrite("MATCH - " & $aSteps[$i][0] & @CRLF)             ExitLoop         EndIf     Next Next   

<Сильные> Шаги

 <код> [Step] A=DONE C=DONE D=DONE [Allsteps] A=DONE B=DONE C=DONE D=DONE   

<Сильные> Выход

 <код> MATCH - A MATCH - C MATCH - D   
 

What I understood: Compare two arrays and do some action if two elements match.

First you need to clear things up. What do you want to compare? The order obvious does matter .. so I decided to Loop on the dynamical array first and if I found a matching pair I also exiting the loop for resource reasons ...

Local $aSteps = IniReadSection("Steps.ini", "Step") If @error Then     ConsoleWrite("#1 An error occured while reading the 'Steps.ini' file." & @CRLF)     Exit EndIf  Local $aAllsteps = IniReadSection("Steps.ini", "Allsteps") If @error Then     ConsoleWrite("#2 An error occured while reading the 'Steps.ini' file." & @CRLF)     Exit EndIf  ; loop on the dynamical array first For $i = 1 To $aSteps[0][0]     ; then loop on the static array for each element     For $y = 1 To $aAllsteps[0][0]         ; check if the elements match         If $aSteps[$i][0] = $aAllsteps[$y][0] Then             ; if the element match print out and exit loop for resource reason             ConsoleWrite("MATCH - " & $aSteps[$i][0] & @CRLF)             ExitLoop         EndIf     Next Next 

Steps.ini

[Step] A=DONE C=DONE D=DONE [Allsteps] A=DONE B=DONE C=DONE D=DONE 

Output

MATCH - A MATCH - C MATCH - D 
</div
 
 

Связанный проблема

0  CakePhp: Сохранение нескольких данных Checkbox связанных  ( Cakephp saving multiple checkbox associated data ) 
Я искал другие учебники и гиды, но не нашел ничего, что делает то, что я после. У меня есть форма, которая имеет несколько поле выбора, которое возвращает м...

-1  Приложение C ++ в массивах с использованием арифметического указателя  ( C app on arrays using pointer arithmetic ) 
Вопрос: как я могу генерировать случайное животное из массива, используя эту функцию? <код> const int MAX =12; //12 animals const int MAXSTR = 10; ...

0  MIPS принимает пустой вход  ( Mips accepting blank input ) 
У меня есть функция в MIPS, которые собирают пользовательский ввод и помещают его в массив целых чисел. Как я не разбиваю на пустой ввод? Есть ли какой-то уло...

1  Нахождение источника действий в jbutton [] [] Array без использования вложенных петель?  ( Finding the source of an actionevent in a jbutton array without using nested ) 
Я создал <код> JFrame приложение с массивом 8x8 <код> JButtons[][] , соответствующий массиву выбранного & amp; Освобожден <код> ImageIcon s. Когда нажата кн...

376  Как я могу преобразовать Swift Array в строку?  ( How do i convert a swift array to a string ) 
Я знаю, как программно сделать это, но я уверен, что есть встроенный ... Каждый язык, который в котором у меня использовал, имеет какое-то текстовое предста...

1  JavaScript эквивалентно Ruby's  ( Javascript equivalent to rubys each ) 
У JavaScript есть эквивалент <код <код> .each метода? Например Ruby: <код> arr = %w(1 2 3 4 5 6 7 8 9 10) arr.each do |multi| sum = multi * 2 puts "T...

0  Array PHP сортировка (ChatLog) по дате (сохранить порядок эквивалентных дат)  ( Php sort array chatlog by date keep order of equivalent dates ) 
У меня есть чатлог, состоящий из даты и фактической записи после двух пробелов. Теперь мне нужно отсортировать это по времени записи, но сохранить порядок зап...

0  Преобразование переменных на наблюдения в SAS  ( Converting variables to observations in sas ) 
У меня есть следующий домашний вопрос в SAS. Мне дают двенадцать переменных, каждый с одним наблюдением (они находятся в электронной таблице Excel), и мое зад...

0  Понимание массивов JavaScript  ( Understanding javascript arrays ) 
Я довольно новичок в JavaScript, и я не уверен, что полностью понимаю, что происходит с фрагментом кода ниже: <код> if ($(".filter-icon").length == 0) ret...

-1  Java создает массив объекта, который 40% длины массива должен быть объектом x другой объект 30% Z и 30% объекта Y [закрыто]  ( Java create an array of object which the 40 of the array length should be objec ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> закрыт . Этот вопрос нуждается в Детали или ясность . В настоящее...

21  Нарезка многомерного массива PHP через один из его элементов  ( Slicing a multi dimensional php array across one of its elements ) 
сказать, например, вы только что запрашивали базу данных, и вы получили этот 2D-массив. <код> $results = array( array('id' => 1, 'name' => 'red' , 'spi...

0  JavaScript Foreach Array Ключевые значения, вывод в HTML  ( Javascript foreach array key values output to html ) 
Как сердите к клавишам ARRAY THRU, чтобы вывести свои значения в HTML? Расположение Я работаю, - это миниатюрная сетка, 3 колонны на 2 ряда. Каждый миниатюр...

-1  Предупреждение: array_push () ожидает параметр 1, чтобы быть массивом, объект, указанный в строке 26  ( Warning array push expects parameter 1 to be array object given on line 26 ) 
Я не совсем уверен, почему это появляется на странице моего сайта? Я посмотрел на код, но на этой линии кажется не так. и линия - это строка array_push Неко...

0  Слияние значений массива в одном массиве, удалив дубликаты и нулевые значения в PHP  ( Merge array values in a single array by removing duplicates and null values in p ) 
У меня есть такой массив: <код> Array ( [0] => Array ( [0] => Array ( [id] => 1234 ...

-1  PHP Удалить окружающие пустые массивы из массива меню  ( Php remove surrounding empty arrays from menu array ) 
Привет, я пытаюсь построить лучшее динамическое меню, чем тот, который у меня в настоящее время использует массивы У меня нет проблем с удалением окружающих...

Связанный проблема

0  CakePhp: Сохранение нескольких данных Checkbox связанных 
-1  Приложение C ++ в массивах с использованием арифметического указателя 
0  MIPS принимает пустой вход 
1  Нахождение источника действий в jbutton [] [] Array без использования вложенных петель? 
376  Как я могу преобразовать Swift Array в строку? 
1  JavaScript эквивалентно Ruby's 
0  Array PHP сортировка (ChatLog) по дате (сохранить порядок эквивалентных дат) 
0  Преобразование переменных на наблюдения в SAS 
0  Понимание массивов JavaScript 
-1  Java создает массив объекта, который 40% длины массива должен быть объектом x другой объект 30% Z и 30% объекта Y [закрыто] 
21  Нарезка многомерного массива PHP через один из его элементов 
0  JavaScript Foreach Array Ключевые значения, вывод в HTML 
-1  Предупреждение: array_push () ожидает параметр 1, чтобы быть массивом, объект, указанный в строке 26 
0  Слияние значений массива в одном массиве, удалив дубликаты и нулевые значения в PHP 
-1  PHP Удалить окружающие пустые массивы из массива меню