|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.03.2021, 18:41 | #101 | |
Форумчанин
Регистрация: 12.03.2019
Сообщений: 376
|
Цитата:
Получилось следующие (может кому пригодится) а то в википедии не всё описано. формат s19 идёт строго от 0 до 65536 байт . формат s28 идёт от 65537 до 16777216 байт . формат s37 идёт от 16777217 байт и до ...... (просто гигантские размеры файлов должны быть) трудно представить где такие могут быть... Зато стало ясно окончательно, почему так популярны s1, s2 (самые ходовые получаются ) особенно s2. И такой редкий s37. Последний раз редактировалось sergey.serg-72; 27.03.2021 в 18:46. |
|
27.03.2021, 22:54 | #102 | |||||
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,342
|
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
|||||
28.03.2021, 01:54 | #103 | ||||
Форумчанин
Регистрация: 12.03.2019
Сообщений: 376
|
Бывали случаи, как объяснил знающий ,с соседнего потока (я в этом 0) что данные искажались так, что совпадала контролка, например байты переворачивались в процессе записи...
Как он объяснил что 100% гарантии нет , но побайтное сравнение с буфером , либо в процессе записи, либо после , самый верный способ. На этом все современные прогеры стоят сейчас. Цитата:
Цитата:
Зато теперь знаем то, чего нет в википедии. Цитата:
fbin: TFileStream; ftxt: TMemoryStream; fbin := tfilestream.Create(dlgOpen1 .FileName,fmopenReadWrite or fmShareDenyNone); ftxt := TMemoryStream.Create; if fbin.Size + offset > High(LongWord) then.... А можно наверное просто , ни чего не менять, а просто ещё одну переменную добавить, чисто для проверки на размер , так можно ? var f: TFileStream; fbin: TMemoryStream; ftxt: TMemoryStream; if F.Size > .....? then begin ShowMessage('Недопустимый размер файла, строго до ..... байт !'); fbin.Free; exit; end else begin Цитата:
Это я , в процессе изучения этого srec по разным ресурсам, к такому выводу пришёл. Вот и подумал , для чего s37 конкретно идёт? , а так и не нашёл ни чего. Но я с Вами согласен , если есть возможность переделки с минимальными усилиями то надо это и реализовать. По крайней мереи это лучше, чем ничего и не зачёт совсем. В конце, концов такой hexполучился отличный, что многие конвертеры позавидуют. То что Джонс будет hex доволен, это к бабке не ходи...Жалко не мне выпал он. Пусть будет s37, а с какого кода лучше переделывать , у нас варианта три набралось уже? Может последний самый? а для проверки размера просто ещё в переменные добавить f: TFileStream; и не заморачиваться ? Последний раз редактировалось BDA; 30.03.2021 в 00:27. |
||||
28.03.2021, 03:00 | #104 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,342
|
Лучше все-таки перейти на TFileStream и для ввода, и для вывода. Тогда можно обрабатывать 4гигабайтовые файлы и никак не ограничивать пользователя. А еще версия с TFileStream работает в 2 раза быстрее, чем с TMemoryStream. Текущий вариант:
Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
Последний раз редактировалось BDA; 28.03.2021 в 03:14. |
28.03.2021, 18:25 | #105 | |
Форумчанин
Регистрация: 12.03.2019
Сообщений: 376
|
Цитата:
|
|
28.03.2021, 18:29 | #106 | |||
Форумчанин
Регистрация: 12.03.2019
Сообщений: 376
|
Цитата:
Код у нас по Hex, а зачем тогда Bin2Srec.Enabled := False; ? Не понял как вызывается процедура, да и за чем ? разве в общем коде нельзя прописать ? Цитата:
Цитата:
Три процедуры не понятны совсем и как вызываются и за чем , если эти моменты в общем коде можно прописать. Последний раз редактировалось BDA; 30.03.2021 в 00:27. |
|||
28.03.2021, 18:36 | #107 | ||||
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,342
|
Цитата:
Цитата:
Цитата:
Цитата:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
||||
28.03.2021, 19:21 | #108 |
Форумчанин
Регистрация: 12.03.2019
Сообщений: 376
|
Это как ? ведь процедура Bin2HexClick. Это клик по кнопке SpeedButton просто кнопка переименована на Bin2HexClick. И вторая процедура BeforeConvert и AfterConver не прописываются, компилятор в ошибку уходит (ошибка идентификации), у меня не получаются эти процедуры.
Сделал так : Код:
|
28.03.2021, 19:30 | #109 |
Форумчанин
Регистрация: 12.03.2019
Сообщений: 376
|
Так это получится в одной программе и hex и srec ?
Мне всё ровно hex убирать придётся , моя та тема будет по srec , это значит форма и одна кнопка для srec. Я же не могу сразу и то и это сдать, Джонса Кондратий схватит тут же..... Это палево сразу... Последний раз редактировалось sergey.serg-72; 28.03.2021 в 19:37. |
28.03.2021, 19:45 | #110 | |||
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,342
|
Цитата:
Код:
Цитата:
Цитата:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
|||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нужно создать "батник", вырезать из "2.txt" первых n строк и вставить их в "1.txt" | temphard | Помощь студентам | 2 | 03.09.2013 16:03 |
Удаление первых n-строк из txt-файла | Neksion | Помощь студентам | 2 | 10.07.2013 18:12 |
Создать чтение из файла и запись в файл txt на С++ | skifre | Фриланс | 0 | 01.06.2012 16:16 |
поиск и выципление строк из txt файла | D_e_n_n | Помощь студентам | 7 | 04.02.2011 05:39 |
C# Представление txt файла как массива строк | asheb | Помощь студентам | 7 | 20.04.2010 12:51 |