#0
by Брудвар
Нужно написать прогу которая может прочитать с диска файл in.hex в котором в hex формате хранятся данные, например: A0E20F327F45 и так далее. Просто символы от 0 до F Потом нужно эти данные преобразовать в соответствующие байты и записать в другой файл out.bin Вроде все просто, но я не нашел готового решения, а сам в этих языках программирования вообще не шарю. Есть тут специ по данным видам программирования?
#8
by Брудвар
Во, точно. Так должны преобразовываться hex в символы. Только нужно чтобы из файла бралось и в файл записывалось.
#9
by Брудвар
Но только не онлайн. Там где скрипт работает нет интернета. Нужно именно скриптовым языком написать программу, которая будет работать на голом виндовсе без дополнительных компиляторов и интерпретаторов. То есть чтобы я мог сесть за компьютер, и напечатать программу. Портов для флэшек и дисководов тоже нет.
#14
by Брудвар
Спасибо, но я уже сам что-то подобное написал: strString = "" strHex ="74657374" For i=1 To Len(strHex) / 2 strString = strString + Chr("&H" + Mid(strHex, i * 2 - 1, 2)) Next WScript.Echo strString Только это не в файл пишется, а на экран. Придется еще изучать как с файлами работать, а мне это никогда больше не пригодится, поэтому трачу время впустую
#17
by Сияющий в темноте
Scripting FileSystemObject читаем два символа,получаем код одного,через Chr его в символ и Write в файл
#18
by Брудвар
Третий день уже делаю прогу, не могу понять что не так: strHex = "417364D4FBE2" upperBound = CInt(Len(strHex) 2) - 1 ReDim bytes(upperBound) For i = 0 To upperBound bytes(i) = Chr(CInt("&h" & Mid(strHex, i * 2 + 1, 2))) Next Dim BinaryStream Set BinaryStream = CreateObject("ADODB.Stream") BinaryStream.Type = 1 BinaryStream.Open BinaryStream.Write bytes BinaryStream.SaveToFile "bin.txt", 2 Выдает ошибку что что-то с типами. Кто шарит в этом дурацком бейсике? Подскажите как исправить
#19
by htwor
Вот здесь написано, что "You can write binary data if you have binary data to write, but VBScript can't create binary data." И далее идет ссылка на компоненту, которая должна помочь. Но ссылка не работает. Так что пора переходить на powershell.
#27
by NorthWind
бат можно отмести сразу. VBS вряд ли справится с записью бинарного файла... если только ADODB.Stream попробовать, но не уверен, потому что VBS не умеет работать с указателями, а чтобы писать бинарку, надо передать указатель на данные. Я бы сделал на Delphi/C/C++.
#28
by NorthWind
есть, только называется по-другому. Delphi Compiler. Ну или, если напрягает вопрос лицензионной чистоты, то Lazarus.
#29
by Брудвар
Только этот файл неоткуда взять. VBS может записывать бинарные файлы, но есть проблемы с созданием бинарных массивов. Delphi Compiler нету, Lazarus тоже
#30
by NorthWind
VBS их записывать не может точно, он штатно работает только с текстовыми файлами. Работать с бинарями может объект ADODB.Stream, входящий в библиотеку Microsoft ADO, который, в свою очередь, можно подключить из VBS. Но поскольку VBS не имеет прямого доступа к памяти - непонятно, как передать в ADODB.Stream ссылку на данные, которые необходимо записать. И есть опасение, что таки никак не передадите.
#31
by NorthWind
+ ну, нету - скачайте да поставьте. Лазарус - это свободное ПО, вы ничего этим не нарушите.
#32
by NorthWind
кроме того, вам он нужен только на той машине где вы будете делать свою программу. Потом скомпилируете ее в автономный исполняемый файл и отнесете на машину, где она будет работать. Лазарус там уже не будет нужен.
#34
by Sserj
А какая у тебя система? Так часто упоминаешь что неоткуда нечего взять, хотя в винде уже с winXP кажется всегда есть нетовские компиляторы. Вот у меня на win10 C:WindowsMicrosoft.NETFramework64v4.0.30319csc.exe - компилятор C# сразу после установки системы. Т.е на более ранних системах только v4.0.30319 может быть другая ну и вместо Framework64 - Framework. Т.е. компялторв C# есть, а на нем гораздо проще найти готовый пример.
#35
by Woldemar177
C++ в первых главах Страуструп рассказывает как это сделать. ЗЫ не надо ему дельфи.
#36
by Woldemar177
Сдается мне у ТС все гораздо проще, это можно сделать, просто он всю часть задачи не рассказывает.
#39
by Брудвар
Windows Server 2016 Datacenter C:WindowsMicrosoft.NETFramework64v4.0.30319csc.exe Да, есть такой файл. Ахахахха! Круто! Спасибо, выручил.
#46
by Брудвар
Писал уже в . Нужно на компе на котором нет доступа к закачке файлов сделать свою прогу которая сможет конвертировать текст в файлы. Если даже я и студент, то к учебе это не имеет никакого отношения.
#48
by Брудвар
На бейсике жутко долго работает. Что-то с компом у меня странное. Вроде проц 4.2 гигагерца должен быстро обработать, игры же не тормозят, а тут такие затупы на двухмегабайтном файле. Уже несколько минут думает. Проц грузит на 25%.
#49
by NorthWind
так игры и не на интерпретируемом скрипте написаны. Напиши на сях чтение блоками в память, обработку, запись блоками в файл - будет летать.
#51
by Брудвар
Я писал обработку изображений по 10 мегабайт, попиксельно, на жаваскрипте который выполняется в браузере, и то за секунду скрипт выполнялся. А тут три строчки кода и два мегабайта в файле до сих пор тупит, уже несколько часов. Правда мелкие файлы на пару килобайт делаются быстро.
#52
by NorthWind
Уже много раз сказано - vbs плохо подходит для работы с двоичными данными. Когда пытаешься натянуть сову на глобус заместо использования подходящего инструмента - скорости ждать не стоит, надо радоваться что вообще работает :) А за то время, сколько висит эта ветка, можно было раза три переписать это на более подходящих языках...
#54
by NorthWind
почему? Это же штатная функция браузерного скрипта и оно вполне может работать быстро, если нет каких-то сильно долгих математических извращений над пикселами.
#55
by Брудвар
Разобрался, мой косяк. Соединял длинные строки. Исправил, теперь работает хорошо. Чувак по себе судит. Не обращай внимания.
Тэги: Админ
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Подключение ККТ Штрих Он-Лайн в 1С УТ 11.
- Сервер для ЗУП и БСХП
- Реализация в ЕВРО.Ошибка:Поле Валюта должно быть пустым!
- отбор по ресурсу регистра сведений
- Бсп, работа с файлами, перенос файлов из базы на диск
- Выгрузка из 1С УТ10.3 в яндекс маркет
- Перенос данных из ЗУП 2.5 в ЗУП 3.1 по выбранным организациям
- АТОЛ, EoU и более одной кассы на компьютере
- Не выводится дерево в табличной части обработки...
- Kyocera ECOSYS M2040dn не печатает вторую копию
- УТ 11. Закрытие месяца, счет фактуры по выданным авансам.
- 2 поля Сумма в заявке на расходование денежных средств
- Хранение и работа с прайсами в 1С
- Получить иерархическую скидку запросом. Подскажите.
- Выбор другого RAID массива для загрузки
- erp КПП в книге покупок
- Загрузка регламентированной отчетности
- Версия набора расширений сеанса не найдена в параметрах сеанса.
- Конвертация ссылочного параметра
- Проверить открыт ли документ другим пользователем