Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Чтение из файла по строкам Добавлено: 29.08.05 12:05  

Автор вопроса:  DR*FRe$H | ICQ: 3442442 
Есть файл (а лучше RichTextBox). В нем есть много строк. На каждой строке есть четыре числа, разделенные пробелами. Типа: XXX YYY ZZZ AAA. Необходимо узнать число, например в четвертой строке в числе номер 3. Хелп!!! Как очень добрых =) людей прошу.

ЗЫ: Первые три числа показывают цвет: <красный>(XXX) <зеленый>(YYY) <синий>(ZZZ) а последнее показывает состояние чекбокса(100-вкл., 000-откл.)

Напишите полный код или напишите ссылку, где можно это найти.

Ответить

  Ответы Всего ответов: 9  

Номер ответа: 1
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #1
Добавлено: 29.08.05 12:11
split(split(s, vbcrlf)(3), " ";)(2)

Ответить

Номер ответа: 2
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #2 Добавлено: 29.08.05 12:16
Ну если чтоб понятнее

Dim Strings() As String
Dim Fields() As String
Strings = Split(RichTextBox1.Text, vbCrLf) 'Массив строк RichTextBox'а
Fields = Split(Strings(3), " ";) 'МАссив чисел четвортой строки
MsgBox Fields(2) 'Третье число четвертой строки

Ответить

Номер ответа: 3
Автор ответа:
 DR*FRe$H



ICQ: 3442442 

Вопросов: 9
Ответов: 7
 Профиль | | #3 Добавлено: 29.08.05 12:17
А можно с расшифровкой: что значие "S", "3", " ", ";(2)". Что вместо них надо подставлять? Я новичек

Ответить

Номер ответа: 4
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #4 Добавлено: 29.08.05 12:52
Небольшая выдержка из статьи (немного касается темы) и ссылка на нее.
http://vbrussian.com/Article.asp?ID=18
Еще одно усовершенствование VB6 - обработка строк, давно досаждавшая программистам. VB6 включает в себя целый список новых функций работы со строками, предназначенных для ускорения выполнения наиболее распространенных строковых операций. Некоторые из них, похоже, основаны на собственных методах программирования Microsoft, а не на повседневной практике программистов, применяющих VB. Примером служит функция Split, разбивающая строку на слова, фразы или подстроки, исходя из положения указанного разделителя. Возможно, для разработчиков компиляторов или системных программистов это выглядит неплохо, но создатели коммерческих приложений в такой функции заинтересованы гораздо меньше. В ту же категорию попадают функции Filter, Join и StrReverse. Вместе с тем мы приветствуем появление функции InstrRev, выполняющей поиск подстрок от конца строки к ее началу. Она полезна при выполнении такой распространенной задачи, как анализ имен маршрутов.

Ответить

Номер ответа: 5
Автор ответа:
 mzx



ICQ: 259560026 

Вопросов: 21
Ответов: 143
 Профиль | | #5 Добавлено: 29.08.05 16:55
Функция Split используется для расщепления строки на субстроки с использованием разделителя субстрок

Возвращаемое значение
Функция Split(Expression) возвращает одномерный массив с типом данных Variant(String), содержащий в качестве элементов найденные субстроки

Параметры
Expression
Обязательный аргумент - строка, которую нужно расщепить. Если аргумент содержит нулевую строку("";), то возвращается пустой массив, т.е. массив без элементов и данных
Delimiter
Необязательный аргумент - символы типа String, которые используются в качестве разделителя строки. Если аргумент опущен, то по умолчанию используется символ пробела(" ";). Если же аргумент содержит нулевую строку("";), то возвращается одноэлементный массив, содержащее целую строку
Limit
Необязательный аргумент, содержащий число возвращаемых субстрок. Если аргумент опущен или равен -1, то обрабатывается вся строка
Compare
Необязательный аргумент - числовая константа, определяющая вид сравнения:
vbUseCompareOption=-1
Используется по умолчанию метод сравнения, заданный инструкцией Option Compare
vbBinaryCompare=0
Двоичный метод сравнения. Буквы разных регистров считаются разными
vbTextCompare=1
Текстовый метод сравнения. Сравнение без учета регистров
vbDatabaseCompare=2
Только для Microsoft Access. Сравнение с использованием информации базы данных
 
Пример

' Считаем число вхождений слова "кол" в строке
Dim stroka As String ' строчка для подсчета
Dim retval ' возвращаемое значение
stroka = "Шит колпак не по-колпаковски. Ливерная колбаса."
retval = Split(stroka, "кол";)
MsgBox "'кол' встречается в строке'" & stroka _
& "' " & UBound(retval) & " раза"


© 1999-2001 А.Климов

Ответить

Номер ответа: 6
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #6 Добавлено: 29.08.05 17:07
И если всё же про файл:

file$ = "C:\1.txt"
n = FreeFile
Open file$ for input as #n
Do While Not EOF (n)
Line Input #n, str$ 'Получили строку
CountStr = CountStr + 1 'Считаем какая строка
If CountStr = 4 Then
    color = Split(str$, " ";) 'Раскидали числа по массиву
msgbox color(2) 'Показали в 4 строке, третье число
End if
Loop 'Перешли к слейдущей строке
Close #n 'После токо как всё прочитали, закрыли файл


P.S. Писал прям тут, не тестил

Ответить

Номер ответа: 7
Автор ответа:
 Black Dragon



ICQ: 321186096 

Вопросов: 30
Ответов: 347
 Web-сайт: в разработке
 Профиль | | #7
Добавлено: 29.08.05 22:19
2 DR*FRe$H, понимаю, что ты "новичек" (цитата), но те же RGB-коды можно было бы записать:
     вместо XXX XXX XXX XXX
     так: XXXX.
ASCII-код первого символа - красный, ASCII-код второго символа - зелень, ASCII-код третьего - синий. А четвертый - "1" - Checked, "0" - не Checked.

Ответить

Номер ответа: 8
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #8 Добавлено: 30.08.05 02:07
2 Black Dragon

Не принципиально, какая разница как записать код цвета? Проблема была в том как найти среди текста, код с цветом, и мы надеюсь помогли, остальное - нюансы :)

Ответить

Номер ответа: 9
Автор ответа:
 DR*FRe$H



ICQ: 3442442 

Вопросов: 9
Ответов: 7
 Профиль | | #9 Добавлено: 30.08.05 16:36
Всем огромное спасибо за помощь!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам