
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
03.05.2018, 13:04
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Написал сервис, который должен загружать файлы. Модуль автогенерации Delphi создал для него класс с методом: Код: pascal 1. Засада там, где её не ждал - не могу прочитать файл. Написал лабу, которая пытается скопировать файл и вообще никак не связана с SOAP. В результате, записывается файл с какой-то ерундой. Как можно прочитать содержимое файла в TByteDynArray ? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:19
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Кодируй в Base64 и передавай строкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:35
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
rgreat, Может это и будет так. Но сейчас вопрос в том, как считать содержимое файла ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:38
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Valery_B, Нужно Read применять не к переменной динамического массива, а к первому (т.е. к нулевому) элементу его. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:48
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
чччД, Ты имеешь ввиду так ? Код: pascal 1. Так я тоже попробовал, но не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:54
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Создаю текстовый документ, в котором пишу "Hello world!" И не могу создать копию файла используя TByteDynArray Получается файл аналогичной длинны, с не понятным содержанием. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:55
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
вместо Stream2.Write(ABytes,SizeOf(ABytes)) тоже надо Stream2.Write(ABytes[0],SizeOf(ABytes)) делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:55
|
|||
|---|---|---|---|
|
|||
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Valery_BТак я тоже попробовал, но не работает.Потому, что Write тоже нужно до ума довести Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:55
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Мда. И не SizeOf(ABytes) а length(ABytes). Как все запущено-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:56
|
|||
|---|---|---|---|
|
|||
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
rgreatнадо Stream2.Write(ABytes[0], SizeOf(ABytes) ) делать.а если подумать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 13:58
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Сколько новых интересных вещей, и все в один день. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 14:01
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
_Vasilisk_а если подумать? Если подумать то Length(ABytes) * SizeOf(ABytes[0]) это масло-масляное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 14:11
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
rgreat, УРА! 4 часа катарги прекратились! Надо действительно считывать ABytes[0] и записывать тоже ABytes[0] А вот передавать в SOAP уже надо именно ABytes . Для меня - просто мистика какая та. Что касается SizeOf и Length, во время опытов там стояло и то, и другое, и третье. В результате я поставил Stream.Size. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 14:11
|
|||
|---|---|---|---|
|
|||
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
_Vasilisk_, Ты намекаешь, что на разных платформах может быть разной длина байта? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 14:14
|
|||
|---|---|---|---|
|
|||
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Valery_BЧто касается SizeOf и Length, во время опытов там стояло и то, и другое, и третье. В результате я поставил Stream.Size. Если работаешь со строками - то лучше делать Length(_String_)*SizeOf(_XXX_Char_). WideChar<>AnsiChar по длине в байтах. Для UTF8 все еще веселее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 14:24
|
|||
|---|---|---|---|
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
c UTF8 все просто Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.05.2018, 14:27
|
|||
|---|---|---|---|
|
|||
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
Zeliusc UTF8 все просто Но помнить об этом надо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.05.2018, 13:08
|
|||
|---|---|---|---|
|
|||
Прочитать файл в TByteDynArray (SOAP) |
|||
|
#18+
DarkMasterТы намекаешь, что на разных платформах может быть разной длина байта?Не. Тип переменной имеет свойство меняться. Вначале это array of Byte, потом станет array of Char. Сам у себя везде пишу Length(array) * SizeOf(array[0]). Кушать не просит, а волнуюсь меньше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&mobile=1&tid=2040935]: |
0ms |
get settings: |
7ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
155ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 476ms |

| 0 / 0 |
