Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.147.103.234] |
|
Сообщ.
#1
,
|
|
|
Товарищи, ткните пожалуйста в примерчик, наверняка уже было. Есть необходимость в большом ХТМЛ файле между определенными тегами текст сохранить в разные файлики.
Причем, - вот это сложное место , текст от <h1> до </h1> отдать новому фалику в <title></title>, а остальной текст, от того же <h1> до следующего <h1> - в текст. И так весь файл Файлы большие, книжки, могут быть и 600 кил и метр. Если просто курсор "водить" и курсор позишн считать - это ж черт знает сколько времени займет... А даже если и так - я, дурак, не соображаю как из каждого куска текста одновременно и заголовок (<h1></h1>) отдельно забрать и весь этот же текст от одного открывающего <h1> до другого <h1>. Может уже придумано кем-нибудь? Я просто не нашел. |
Сообщ.
#2
,
|
|
|
а пример такого файла(не очень большого) можно? из твоих объяснений ничего не понятно
|
Сообщ.
#3
,
|
|
|
Сдается мне, автора спасут Mid и InStr
|
Сообщ.
#4
,
|
|
|
А еще поиск...
|
Сообщ.
#5
,
|
|
|
Private Declare Function LockWindowUpdate Lib "user32" (ByVal hwndLock As Long) As Long Private Sub Form_Load() Dim strData As String Dim strStartTime As Date Me.Show strStartTime = Now strData = "<h1>Тут твой нтмл файл</h1><h2>и дальше по строчкам его анализируешь</h2><h3>и делай с ним что хочешь</h3>" LockWindowUpdate List1.hWnd Call analise(strData, List1) LockWindowUpdate 0& Me.Caption = Abs(DateDiff("s", Now, strStartTime)) & " СЕК." End Sub Public Function analise(text As String, list As ListBox) Dim DugkiOpen As Boolean Dim temp As String For i = 1 To Len(text) If Mid(text, i, 1) = ">" Then DugkiOpen = True GoTo 10 End If If Mid(text, i, 1) = "<" Then DugkiOpen = False If Len(temp) > 0 Then list.AddItem temp End If temp = "" End If If DugkiOpen = True Then temp = temp + Mid(text, i, 1) End If DoEvents 10 Next i End Function я решал эту проблему так |