#0
by bestuzhev
Есть Число, например 19553 его как-то надо записать в 4 байта. Например 19553 в 2ичной системе 0000000000000000100110001100001 потом это добро поделить на байты 0000000 00000000 01001100 01100001 и каждый байт записать в строку в виде символа в итоге у этого числа получится следующая строка " La", то есть первые 2 байта нули в третьем 01001100 что соответствует L а в 4м 01100001 что соответствует a. Как такой перевод реализовать в 1с 8.1?
#4
by shuhard
[Как такой перевод реализовать в 1с 8.1] Скрипт=СоздатьОбъект("MSScriptControl.ScriptControl"); Математика=Скрипт.Eval("Math"); Ат=Математика.pow(2,Цел(Лог(а)/Лог))+1; - и фигарь свои двоичные сдвиги и XOR
#5
by bestuzhev
Какими функциями переводить из одного вида в другой. Формат выгрузки цен (цены в копейках).
#7
by bestuzhev
Есть число например что приводил я 19553, оно занимает 2 байта, 2 байта это 2 символа из ascii, каждый байт свой символ. А формат файла в который все это нужно записать (и из которого все это будет загружаться предполагает что число должно писаться в 4 байта) то есть в файл пишем два символа из ascii с 00000000, а потом два символа которые соответствуют числу 19553.
#13
by Said_We
Так много цен передаёшь что не влазиют в файл и надо уменьшить разрядность клонки? Или куда передаёшь - там число, а не строка символов?
#14
by bestuzhev
У файла есть специальный формат, в котором цена должна занимать 4 байта, то есть при загрузке считывается 4 байта и получается число.
#15
by Said_We
Ну или функцию внешнюю для перевода используй? Или сам 19553/16 и переводишь в 16-ую систему.
#17
by bestuzhev
Если кто еще не понял суть проблемы, то откройте калькулятор в винде, переведите его в инженерный режим, выберите Bin и 4 байта и введите 11111111111000000000000000000000 потом нажмите Dec получится 4292870144 потом Hex и получите FFE00000 вот эти 4 байта и надо записать в текстовый файл, побайтно.
#21
by YoungMan
А в чем проблема как таковая? Если у тебя произвольный формат файла получается??? Ты же сам его формируешь, так еще и сам его загружать после этого будешь...
#22
by Said_We
Когда ты это 16-е число запихнешь в файл, то и получиль строку " La" при просмотре в текстовом редакторе или ХХХХh в HEX редакторе.
#28
by YoungMan
Вообще же конечно максимальное значение которое дает 16-я система при 4-байтном коде: FFFFFFFF, т.е. 4`294`967`295
#30
by bestuzhev
Вот. Так мне и надо представить число в 4-байтном коде и записать эти 4 байта в файл.
#35
by YoungMan
но если ты сам определяешь в каком виде будет формироваться файл (ты же в вообще некую шифровку предлагал), то как опять же без переработки будет этот файл обрабатываться на приемнике?
#42
by Fram
ну не умеет 1С с бинарниками работать.. пользуйся сторонними объекатми.. на vbscript попробуй
#44
by Rie
В этом файле сказано, что имеется программка GoodsConverter, которая способна превратить goods.txt в goods.bin Если не умеешь писать двоичные файлы - то что мешает воспользоваться этим несомненно полезным инструментом?
#45
by bestuzhev
Да не хотелось чем-то еще пользоваться, придется в в текстовом грузить. Просто текстовый грузится раз в 40 медленнее.
#55
by Rie
Есть число (например, оно называется Цена). Это число состоит из 4 байтов: (Цена%256), (Цел(Цена/256)%256), (Цел(Цена/65536)%256), (Цел(Цена/16777216)). (Или в каком порядке тебе они нужны?)
#56
by Rie
И зачем тебе _грузить_ текстовый файл, если у тебя есть программка-_конвертер_, которая создаст .bin?
#57
by Ковычки
Ты паразитируешь что ли ? только скорее всего в обратном порядке и не стоит джабу использовать (будут проблемы)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Куда вывести HTML макет на управляемой форме 8.2
- План обмена + регламентное задание
- Нужен совет по очистке измерения в регистре накопления.
- УТ 8.1 Зачем "УчитыватьНДС" ставится всегда для нового документа в ИСТИНА?
- где скачать NDeclin.dll склонения
- Сравнение строк в SQL
- 8.2 Не работает ПоместитьВоВременноеХранилище() со строковым адресом
- Как добавить программно реквизит объекта на форму?
- Сообщения пользователям в УТ
- Как купить лицензионную 1С 7.7 SQL по нормальным ценам?
- Почему падает 1Ска при загрузке V7plus.dll
- Как перевести базу с SQL Enterprise Edition 2005 в SQL Standart Edition 2008?
- "Addon1C.Commands"
- Проблема с переносом из УТ в Бух
- Ошибка при вызове метода контекста (Записать)
- Перенос ПУБ - УПП
- Как контрагенту добавить несколько адресов доставки
- WS-Ссылки
- Номер года в литерале типа 'Дата' превышает 3999
- ЗУП 2.5.23: Табель не правильно заполняется