|
|
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Коллеги, подскажите, надо очень срочно. В базе файлы хранятся в поле Blob. Требуется получить файл в json поле в формате Base64. Делаю таким образом, но файл оказывается не в кодировке Base64. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Вопрос что делаю неправильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 10:33:31 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
а твой EncodeString() рабочий? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 13:39:19 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий, А вот как проверить, сейчас сделал проверку на D2010: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. В итоге после кодирования и раскодирования получаю исходную строку. После кодирования получаю строку как на скрине. Верно ли все ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:18:08 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
wsnet, Верно, "текст для кодирования" = 8uXq8fIg5Ov/IOru5Ojw7uLg7ej/ А что в файле получается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:33:30 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
wsnetВ итоге после кодирования и раскодирования получаю исходную строку. После кодирования получаю строку как на скрине. Верно ли все ? http://foxtools.ru/Base64 Результат: текст для кодирования ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:39:33 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Cane Cat Fisher, Ничего не понимаю, делаю вот таким образом: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Результаты на скрине, почему они разные... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:40:28 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
И какую кодировку выбрать UTF-8 или Unicode для Delphi2010? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:42:54 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
wsnet, Чего непонятного-то? EncodeString кодирует строку в Win1251 (интересно, только, почему не в UTF-16LE), a EncodeBytes кодирует строку в UTF-8, поэтому и результаты разные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:45:54 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
wsnet, Откуда вообще взялась эта EncodeString, из какого модуля? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:46:55 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Спрошу просто - как правильно кодировать строку? Запутался... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:50:31 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
03.11.2017 14:50, wsnet пишет: > Спрошу просто - как правильно кодировать строку? ты сперва с кодировками определись. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:54:16 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Всё верно -- в последних версиях это и есть EncodeString: 10468470 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:54:27 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
JaDiВсё верно -- в последних версиях это и есть EncodeString: 10468470 Почему тогда она в юникодной 2010 кодирует строку как ANSI? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 14:59:28 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
alekcvp, а как должна? Base64 -- это и есть обычный ансишный текст из английского алфавита. Специально, чтобы проблем с кодировками не было при обмене сообщениями (теми же письмами). Вот тут другой вариант есть через tencoding: 20754405 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:02:33 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий, для формирования json-файла в программе использую: Код: pascal 1. 2. 3. Тогда русские буквы отображаются при передачи json-файла корректно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:02:37 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. Про MemoryStream.Position не пишу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:03:02 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
JaDi, подскажите как правильно решить задачу перекодировки в моем случаи запутался совсем... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:03:54 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
JaDialekcvp, а как должна? Base64 -- это и есть обычный ансишный текст из английского алфавита. Специально, чтобы проблем с кодировками не было при обмене сообщениями (теми же письмами). Я знаю что такое base64. Посмотри пример выше - он исходную строку переводит из Unicode в ANSI перед кодировкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:05:59 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
alekcvp, хз что он там переводит... Речь-то про файлы? А раз файлы, то и работать надо не со строками, а с потоками (т.е. байтами). Вот рабочий пример: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:22:31 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
alekcvp, ааа, понял о чем речь -- да, в первом посте некорректно делается у автора -- содержимое файла не надо преобразовывать в строку, т.е. выделенное красным убрать и сделать преобразование по примеру выше: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:27:28 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
wsnet, вот исправленный вариант, должен работать корректно: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:37:50 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
JaDi, Поясните почему stream не надо преобразовывать в string ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:55:48 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
wsnet, Потому что файл состоит из двочных данных (байтов), которые никак в строку не засунуть в голом виде -- левые байты в лучшем случае пропадут-преобразуются, а в худшем, сама строка тупо обрежется где-нибудь на нулевом байте. Короче, данные из файла испортятся, если там хоть что-то будет отличное от текста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 15:59:04 |
|
||
|
Кодирование файла в Base64
|
|||
|---|---|---|---|
|
#18+
Если MS SQL, то можно сразу с сервера получать Base64, не преобразуя в приложении, см. xs:base64Binary ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2017, 16:32:00 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39547473&tid=2041639]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
169ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 206ms |
| total: | 480ms |

| 0 / 0 |
