Кодовая логика
Я пытаюсь прочитать file_path и file_hash , хранящиеся в списке строк. Они оба разделены "+" как разделитель.
Я хочу прочитать их во временном массиве "tempArray ()", где file_path будет принимать индекс 0, а file_hash - индекс 1.
Проблема
Невозможно выполнить String.Split () для разделения. Пробовал 2 решения после поиска.
Проверено, но не работает
Dim tempArray() As String = filepathhash.Split(" |+| ")
Dim tempArray() As String = filepathhash.Split(New [Char]() {CChar(" "), CChar("|"), CChar("+"), CChar("|"), CChar(" ")})
Полный код
For Each filepathhash In se_queryfile_hashes
MsgBox(filepathhash.ToString)
'Dim tempArray() As String = filepathhash.Split(New [Char]() {CChar(" "), CChar("|"), CChar("+"), CChar("|"), CChar(" ")}) ' |+|
Dim tempArray() As String = filepathhash.Split(" |+| ") ' not working too..
MsgBox(tempArray(0)) : MsgBox(tempArray(1)) 'testing using msgbox
For Each malwarehash In temp_hash_values
If tempArray(1) = malwarehash Then
matched_files.Add(tempArray(0))
matched_hashes.Add(tempArray(1))
End If
check_bgWorkerCancelled()
Next
tempcounter += 1
Next
Ожидаемое
Я ожидаю, что результаты будут:
- MsgBox1 будет отображать
C:/some/folder/file.exe
- Msgbox2 будет отображать
FileHashForTheAboveFile
Что я получу
Я получаю неожиданные результаты обоими способами String.Split (). Они оба разделяют порции с пробелами и всем остальным, но не из набора разделителей.
Кодовое изображение
Любая помощь приветствуется. Спасибо.