Abap - Создать байтовый массив из файла - PullRequest
5 голосов
/ 31 марта 2011

Я хочу, чтобы мои разработчики ABAP могли отправлять мне файлы через функцию.Я пытаюсь выяснить, можно ли преобразовать файл в байтовый массив в abap.Если это возможно, у кого-нибудь есть пример кода?

Ответы [ 2 ]

6 голосов
/ 31 марта 2011

примерно так должно работать:

data: w_line type xstring.
data: t_file type table of xstring.
data: w_filename type string falue 'myfile.txt'.
data: w_len type i.

open dataset w_filename for input in binary mode.

read dataset w_filename into w_line length w_len.

while w_len > 0.
    append w_line to t_file.
    read dataset w_filename into w_line length w_len.
endwhile.

close dataset w_filename.

* t_file now holds the data in an internal table
0 голосов
/ 15 августа 2013

Есть несколько способов сделать это, но я нашел, что использовать Objects проще всего.

DATA byte_array TYPE TABLE OF raw256. "any type will work here
DATA my_file    TYPE string VALUE `C:\users\bob\file.bin`. "Absolute or relative works

CL_GUI_FRONTEND_SERVICES=>GUI_UPLOAD(
  EXPORTING
    filename = my_file
    filetype = 'BIN'
  CHANGING
    data_tab = byte_array ).

Этот класс очень устойчив по моему опыту.Существует множество необязательных параметров и кодов возврата.SAP написала отличную документацию здесь .

...