| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > Со строкой, как с массивом |
| Автор: Baa 15.5.2004, 13:10 |
| Объясните мне, товарищи, могу ли я работать со строкой, как с массивом? Я создаю в аксесе форму. Кладу на неё EditBox. Мне надо текст оттуда вытаскивать посимвольно. Я использую для этого функцию mid, но нельзя ли как-нибудь проще? |
| Автор: Skywalker 15.5.2004, 20:26 |
| в Accesse есть возможность использовать большинство комманд и функций vb... попробуй тогда left() и right() |
| Автор: -Mikle- 15.5.2004, 21:31 | ||
Я не знаю сработает ли это в Access, но в VB работает без проблем
|
| Автор: Baa 18.5.2004, 01:18 | ||
| Мой код ниже Вот как бы его улучшить? некрасивый он, на мой взгляд. Притом мне совсем не нраится именно выдерание символов из строки при помощи функции.
|
| Автор: Vach 19.5.2004, 17:22 | ||
| Вот вариант, должен работать быстрее, но я не мерил. А зачем это нужно, если не секрет?
|
| Автор: Akina 19.5.2004, 18:07 | ||||
|
| Автор: Baa 20.5.2004, 14:18 | ||||
| Зачем это нужно? знанимаюсь реализацией кода Хаффмана... Дальше еще интересней... вот только не знаю, стоит ли отдельную тему создавать? Вобщем, если что, прошу прощения у модератора. Смотрим, составили мы нашу табличку. Все ок
Так вот Великое извращение делать это в аксесе, но приходится. Соотв. заполнить её по этому алгоритму, беря данные из таблицы, которую заполняли выше. http://www.avhohlov.narod.ru/p2500ru.htm Но что-то у меня ну никак не получается придумать алгоритм заполнения... Буду благодарен за идеи. Да, кстати, тему не стоит переносить в алгоритмы, ибо алгоритм сам я знаю и могу реализовать в других условиях (языках). Добавлено @ 14:24 Akina, использование конструкции with считается некорректным с точки зрения структурного программирования т.к. она больше запутывает, чем дает реальную выгоду. RecordCount использовать также не рекомендуется.
|
| Автор: Vach 20.5.2004, 16:19 | ||
| Можно в старой таблице дерево строить. Так проще. Изменения Добавь поля: Level, id_Next_Level, LR. Все Integer (Замени тип "Symbol" на Integer и работай с ASCII кодом, так избежишь проблем с непечатными символами.) - ето так, мысли в слух После выполнения получится запись с Level = 1 это и есть верх дерева От "Symbol" поднимайся на верх по "id_Next_Level" и составляй код по "LR"
|
| Автор: Alexei 21.5.2004, 08:27 |
| Байты в строку и наоборот: Private Declare Function lstrcpyToArray Lib "kernel32" Alias "lstrcpyA" (deststring As Byte, ByVal srcstring$) As Long Private Declare Function lstrcpyFromArray Lib "kernel32" Alias "lstrcpyA" (ByVal deststring$, srcstring As Byte) As Long Использовать так: Call lstrcpyToArray(buffer(0), string) Call lstrcpyFromArray(string, buffer(0)) |
| Автор: Baa 22.5.2004, 00:46 |
| Alexei, да неправильный это подход... цель была найти какой-нить простой способ без объявления дополнительных функций. А так и с функцией mid неплохо работает. |