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

есть ли у кого нибудь какие-нибудь предложения
как это побороть
...
Рейтинг: 0 / 0
31.12.2008, 16:49
    #35742797
Шыфл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
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
31.12.2008, 20:12
    #35742863
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
даже по строкам читать не выходит
...
Рейтинг: 0 / 0
26.02.2009, 18:09
    #35840248
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
чтение большого файла по строчкам организовал через 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
26.02.2009, 18:52
    #35840371
slope
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
OemToChar, strconv
...
Рейтинг: 0 / 0
26.02.2009, 19:30
    #35840456
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
нет не то
я читаю из xml-файла
и не правильно выдаёт
...
Рейтинг: 0 / 0
27.02.2009, 17:03
    #35842924
slope
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
скинь кусок файла и то постановку задачи что искать. так быстрее помощь прийдет
...
Рейтинг: 0 / 0
27.02.2009, 17:08
    #35842943
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
SAX используй вместо MSXML
...
Рейтинг: 0 / 0
01.03.2009, 19:21
    #35844863
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
а SAX как использовать в VB6 ?
можно пример
...
Рейтинг: 0 / 0
02.03.2009, 08:41
    #35845168
BION
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
michael Rа SAX как использовать в VB6 ?
можно пример

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

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

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

без двойных & и #
...
Рейтинг: 0 / 0
03.03.2009, 18:17
    #35849179
michael R
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
XML большого размера
нашёл такой обьект
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
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / XML большого размера / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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