Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2018.07.01;
Скачать: CL | DM;

Вниз

Файл в BIN и обратно   Найти похожие ветки 

 
Германн ©   (2016-07-05 01:11) [40]


> Sonia ©   (04.07.16 09:44) [10]
> Требуется это
> для передачи документов между двумя системами разных разработчиков
> (обмен происходит в двоичном виде).

Любая передача документов возможна только в двух вариантах. Либо в печатном (на бумаге), либо в электронном (файл). Если выбран электронный вариант, то передать файл можно либо выложив его на FTP-сервер, либо на некий хостинг в и-нете и дав на него ссылку. Либо передать сей файл вложением в электронное письмо.
В первых двух вариантах никаких изменений документа не нужно. В третьем варианте нужно перекодировать файл дабы он не содержал специальных кодов/символов. С чем все варианты алгоритмов, указанные в [20] прекрасно справляются. Ибо для этого их и разработали!
Так что не понимаю зачем нужно изобретать велосипед.

<OFFTOP>
Возможно проблема в том, что сей файл пытаются передавать "через сокеты" . Но и тогда во-первых алгоритмы [20] прекрасно справляются, а во-вторых все имеющиеся компоненты умеют передавать не только текст.
</OFFTOP>


 
iop ©   (2016-07-05 08:28) [41]

прежде чем алгоритмы прекрасно справятся с передачей двоички по сокетам шмокетам
надо сначала эту двоичку умудриться засунуть в еённый xml

происходит запись преобразованного текста документов и их реквизитов в xml файл

что она и делает, в восемь раз увеличивая размер исходного файла


 
han_malign ©   (2016-07-05 11:40) [42]


> Base64

- а еще UTF7 и https://ru.wikipedia.org/wiki/CDATA


 
Sonia ©   (2016-07-05 18:31) [43]


> han_malign ©   (05.07.16 11:40) [42]
>

Простите мне мое невежество, я наверное чего-то недопонимаю. Если я пытаюсь открыть, например, файл doc Блокнотом, получаю там кракозябры, то как, простите меня, я сформирую xml файл без преобразования?? Они у меня просто туда не считаются и не запишутся (пробовала записать содерживое doc файла в Memo, записались только 3-4 кракозябры и все...). Тогда чем поможет мне раздел CDATA?


 
iop ©   (2016-07-05 18:48) [44]

сколько можно тупить-то?

1. берешь любой файл (в том числе двоичный и в том числе rtf)
2. кодируешь его в hex (увеличение в два раза) или base64 (увеличение в 4/3 раза) или в свой фирменный "двоичный" формат (ожирение в 8 раз)
3. засовываешь его в CDATA чтобы xml ничего там не убрал и не нормализовал
4. успокаиваешься.
5. сообщаешь той стороне какое кодирование было использовано


 
Плохиш ©   (2016-07-05 18:48) [45]


> Если я пытаюсь открыть, например, файл doc Блокнотом

doc - это фигня, картинки и exe-шки надобно блокнотом открывать.

PS. Скучная ветка. Ни о чём.

PPS. Невозможно помочь тому, кто не обладает даже начальными базовыми знаниями.

PPPS. Sonia, почитайте раздел "Орешник".


 
Sonia ©   (2016-07-05 18:56) [46]


> iop ©   (05.07.16 18:48) [44]


> 2. кодируешь его в hex (увеличение в два раза) или base64
> (увеличение в 4/3 раза) или в свой фирменный "двоичный"
> формат (ожирение в 8 раз)


Вопрос состоял в том, как оптимизировать алгоритм преобразования в двоичный формат! (заказчик просил именно в двоичном формате!), а не заменить его другими!


> Плохиш ©   (05.07.16 18:48) [45]
>


Учту Ваши рекомендации.

Всем спасибо за ответы.


 
iop ©   (2016-07-05 19:02) [47]

1. двоичный формат и xml несовместимы.
сообщите это заказчику.

1. твой формат "1 бит растягиваем в байт" не двоичный, а текстовый.

Вопрос состоял в том, как оптимизировать алгоритм преобразования в двоичный формат! (заказчик просил именно в двоичном формате!), а не заменить его другими!


миллион раз уже сказали как.



Страницы: 1 2 вся ветка

Текущий архив: 2018.07.01;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.007 c
2-1467622935
Andrey K
2016-07-04 12:02
2018.07.01
Не ищет переменную по Ctrl левая клавиша мыши.


8-1242059975
noH@ker
2009-05-11 20:39
2018.07.01
О DirectSound


2-1467378535
Sonia
2016-07-01 16:08
2018.07.01
Файл в BIN и обратно


15-1473276737
Тимохов Дима
2016-09-07 22:32
2018.07.01
Свой Highlighter для TSynEdit


1-1358525546
Eraser
2013-01-18 20:12
2018.07.01
Объявление метода интерфейса с индексом