Слишком длинные строки на VB
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Слишком длинные строки на VB

Слишком длинные строки на VB

Ответ
Поиск в этой теме
Непрочитано 20.09.2010, 11:26 #1
Слишком длинные строки на VB
Сергей Дубина
 
Регистрация: 06.04.2009
Сообщений: 702

Здравствуйте.
Создал на VBA проект где в качестве мини-БД использовал строчку XML. Строчку хранил в TextBox, размер строки 2,8МБ. Попытка переделки на VB6 окончилась неудачей т.к. такие строки не помещаются в элементах управления (а Рич бокс виснет). Хранение в файле ресурсе привела к аналогичной проблеме. Хранить во внешнем файле нельзя. Посоветуйте, я исчерпан.
__________________
КазнитьØнельзяØпомиловать:eek:
Просмотров: 4243
 
Непрочитано 20.09.2010, 12:12
#2
Олег (jr.)

специалист по околачиванию грушевых деревьев
 
Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811


Если попробовать:
http://www.chilkatsoft.com/faq/DotNetStrToBytes.html
Олег (jr.) вне форума  
 
Автор темы   Непрочитано 20.09.2010, 12:19
#3
Сергей Дубина


 
Регистрация: 06.04.2009
Сообщений: 702


Функия LoadResData уже возвращает байтовый массив, проблема возникает после преобразования его в строку.
__________________
КазнитьØнельзяØпомиловать:eek:
Сергей Дубина вне форума  
 
Непрочитано 20.09.2010, 12:22
#4
Олег (jr.)

специалист по околачиванию грушевых деревьев
 
Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811


Цитата:
Сообщение от Сергей Дубина Посмотреть сообщение
Функия LoadResData уже возвращает байтовый массив, проблема возникает после преобразования его в строку.
А если использовать пространство имен System.Linq.Xml
то можно быстро разпарсить твой файл XML:
dim xmldoc as XDocument = Xdocument.Load("...\hugesizedstring.xml")
может тоже выход?
А ты используешь StringBuilder для формирования строки?
Олег (jr.) вне форума  
 
Автор темы   Непрочитано 20.09.2010, 13:35
#5
Сергей Дубина


 
Регистрация: 06.04.2009
Сообщений: 702


Цитата:
Сообщение от Олег (jr.) Посмотреть сообщение
А ты используешь StringBuilder для формирования строки?
Нет. Поподробнее плз.
Цитата:
Сообщение от Олег (jr.) Посмотреть сообщение
А если использовать пространство имен System.Linq.Xml
то можно быстро разпарсить твой файл XML:
dim xmldoc as XDocument = Xdocument.Load("...\hugesizedstring.xml")
внешний файл меня не устривает, надо чтобы XML хранился внутри
__________________
КазнитьØнельзяØпомиловать:eek:
Сергей Дубина вне форума  
 
Непрочитано 20.09.2010, 15:01
#6
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Строчку хранил в TextBox, размер строки 2,8МБ.
Строчка 2,5Мб - это что-то нехорошее... Может это не строчка, а весь XML-документ? Почему бы не хранить строку в строковой переменной, а не в свойстве контрола? Вполне возможно что это свойство имеет ограничение на объём символов, которые в него можно ввести (предполагаю).

Цитата:
Сообщение от Олег (jr.) Посмотреть сообщение
Если попробовать:
http://www.chilkatsoft.com/faq/DotNetStrToBytes.html
...
...StringBuilder...
Олег, он ведь не на .Net пишет, а на VB6, т.о. .Net-решения вряд ли чем-то помогут автору.
Offtop: Вообще при использовании технологии 'Linq to Xml' удобней (имхо) сразу использовать класс 'XElement', не создавая объекта 'XDocument'.


Цитата:
надо чтобы XML хранился внутри
Внутри чего?
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:

Последний раз редактировалось hwd, 20.09.2010 в 15:09.
hwd вне форума  
 
Автор темы   Непрочитано 20.09.2010, 16:23
#7
Сергей Дубина


 
Регистрация: 06.04.2009
Сообщений: 702


Цитата:
Сообщение от hwd Посмотреть сообщение
Внутри чего?
вНУТРИ ИСПОЛНЯЕМОГО ФАЙЛА

Цитата:
Сообщение от hwd Посмотреть сообщение
Строчка 2,5Мб - это что-то нехорошее... Может это не строчка, а весь XML-документ? Почему бы не хранить строку в строковой переменной, а не в свойстве контрола? Вполне возможно что это свойство имеет ограничение на объём символов, которые в него можно ввести (предполагаю).
Чтобы хранить строку в строковой переменной сначала ей (переменной)надо значение это (2,8 Мб) присвоить. Да строчка "ненормальная" по сути это XML файл без заголовка.
!!! Еще обращаю ваше внимание на то что на ВБА всё работает (см. пост 1)!!!
__________________
КазнитьØнельзяØпомиловать:eek:
Сергей Дубина вне форума  
 
Непрочитано 20.09.2010, 17:00
#8
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Сергей Дубина Посмотреть сообщение
вНУТРИ ИСПОЛНЯЕМОГО ФАЙЛА
Хранить xml внутри исполняемого файла? Пока воздержусь от негативных комментариев... Зачем так делаете, какого рода информацию храните, в чём именно её храните (неужели жёстко зашито в свойстве контрола TextBox)?

Цитата:
Сообщение от Сергей Дубина Посмотреть сообщение
Чтобы хранить строку в строковой переменной сначала ей (переменной)надо значение это (2,8 Мб) присвоить. Да строчка "ненормальная" по сути это XML файл без заголовка.
!!! Еще обращаю ваше внимание на то что на ВБА всё работает (см. пост 1)!!!
Я видел вашу запись. ВБА и VB6 это не одно и то же - соответственно и Controls там вполне возможно, что по разному реализованы, с разными ограничениями (о чём я писал выше). Попробуйте найти на эту тему информацию в MSDN - может тогда выяснится в чём дело.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Автор темы   Непрочитано 21.09.2010, 08:20
#9
Сергей Дубина


 
Регистрация: 06.04.2009
Сообщений: 702


Разобрался, через ресурсы длинные строки работают.
__________________
КазнитьØнельзяØпомиловать:eek:
Сергей Дубина вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Слишком длинные строки на VB



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу) Red Nova LISP 5025 20.08.2025 22:52
справочник команд с описанием параметров коммандной строки ganjour Программирование 1 11.10.2009 21:41
Как подгрузить vb к автокаду? vasyavip Программирование 9 19.01.2009 01:40
координаты вершин выбранной полилинии на VB? как получить ssv22 Программирование 5 17.07.2008 00:01