powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / XML большого размера
12 сообщений из 12, страница 1 из 1
XML большого размера
    #35742749
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть файл формата xml 2G а то и больше
мне в нём нужно через Xpath произвести поиск
проблема что из-за своего размера файл просто не грузиться в DOM
и виснит комп

есть ли у кого нибудь какие-нибудь предложения
как это побороть
...
Рейтинг: 0 / 0
XML большого размера
    #35742797
Шыфл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
michael R,
читай построчно в стринги и извращайся. Что-то типа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
dim filename as string
dim pomstr as string
dim str as string
dim t as boolean
filename="c:\myxml.xml"
Open filename for Input As # 1 
Do While Not EOF( 1 )
    Line Input # 1 , pomstr
    if left(pomstr, 5 )="<tag> then
       t=true
    end if 

    if t then
    str = str & chr( 13 ) & pomstr
    end if

   if t then and left(pomstr, 6 )=</tag> then
       t=false
    end if
Loop

Это если он у тебя строчками писан, а не сплошным текстом
...
Рейтинг: 0 / 0
XML большого размера
    #35742863
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
даже по строкам читать не выходит
...
Рейтинг: 0 / 0
XML большого размера
    #35840248
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чтение большого файла по строчкам организовал через FSO

но теперь другая проблема текс содержит некий текст в Unicode (не англиские буквы)
и при чтении идёт всякая фигня
как это преобразовать

Dim fso As New Scripting.FileSystemObject
Dim fil As File

Set fil = fso.GetFile("file.txt")
Set ts = fil.OpenAsTextStream(ForReading)
Do Until ts.AtEndOfStream
DoEvents
t = ts.ReadLine

'обработка

Loop
...
Рейтинг: 0 / 0
XML большого размера
    #35840371
slope
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OemToChar, strconv
...
Рейтинг: 0 / 0
XML большого размера
    #35840456
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет не то
я читаю из xml-файла
и не правильно выдаёт
...
Рейтинг: 0 / 0
XML большого размера
    #35842924
slope
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
скинь кусок файла и то постановку задачи что искать. так быстрее помощь прийдет
...
Рейтинг: 0 / 0
XML большого размера
    #35842943
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAX используй вместо MSXML
...
Рейтинг: 0 / 0
XML большого размера
    #35844863
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а SAX как использовать в VB6 ?
можно пример
...
Рейтинг: 0 / 0
XML большого размера
    #35845168
Фотография BION
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
michael Rа SAX как использовать в VB6 ?
можно пример

The Joy of SAX: a Visual Basic Sample
...
Рейтинг: 0 / 0
XML большого размера
    #35848697
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
например имею текст кусок из большого файла
Код: plaintext
1.
Топ

как преобразовать в
Код: plaintext
1.
Топ

или как получить его в виде кодов Unicode
Код: plaintext
&# 1058 ;&# 1086 ;&# 1087 ;

без двойных & и #
...
Рейтинг: 0 / 0
XML большого размера
    #35849179
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашёл такой обьект
SQLXMLBulkLoad для массовой загрузки xml в SQL Server

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Set objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkload.3.0")
objBL.ConnectionString = "..."
objBL.ErrorLogFile = "C:\errorLoad.xml"
'verify checking of constraints
objBL.CheckConstraints = True
'keep this as false
objBL.Transaction = False
'if you want to keep the identity seed if present, etc
objBL.KeepIdentity = False
'execute the schema and xml file
objBL.Execute "c:\structure.sdr", "c:\ex.xml"
Set objBL = Nothing

так вот проблема не знаю написать файл схемы для загрузки
нужно просто в таблицу скинуть каждую строчку из файла как отдельную записть

таблица Т1 поле F1 nvarchar(2000)
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / XML большого размера
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]