@Drew20
Недопрограммист Android))

Как вытащить из ответа сервера название и размер прикрепленного к письму файла android?

У меня в приложении я работаю с сообщениями в которых могут быть прикрепленные файлы, вот мне для того что-бы послать запрос на скачивание файла нужно знать название файла и id сообщения. Вот я создал класс для получения размера и названия файла, потом я этот класс вызываю в функции показа всего сообщения. И вот я столкнулся с проблемой, что у меня почему-то в textView выводится ромбы с знаком вопроса, либо ничего не выводится. Может я как-то неправильно инициализировал массив названий, либо не так вызвал класс. Вот класс для получения информации про файл:
public class FileData {
    @SerializedName("size")
    @Expose
    private double size;
    @SerializedName("name")
    @Expose
    private String name;

    public FileData(double size, String name) {
        this.size = size;
        this.name = name;
    }

    public double getSize() {
        return size;
    }

    public String getName() {
        return name;
    }
}


дальше вот мой класс для вывода сообщения:
public class ViewMessage {
    @SerializedName("date")
    @Expose
    private String date;
    @SerializedName("type")
    @Expose
    private String type;
    @SerializedName("user_id")
    @Expose
    private String userId;
    @SerializedName("body")
    @Expose
    private String body;
    @SerializedName("can_delete")
    @Expose
    private String canDelete;
    @SerializedName("can_reply")
    @Expose
    private String canReply;
    @SerializedName("name")
    @Expose
    private String name;
    @SerializedName("subject")
    @Expose
    private String subject;

    @SerializedName("attach")
    private List<FileData> attach;
    
    public String[] getAttachesNames() {
        String[] names = new String[attach.size()];
        for (int i = 0; i < attach.size(); i++) {
            FileData fileInfo = attach.get(i);
            names[i] = fileInfo.getName();
        }
        return names;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getUserId() {
        return userId;
    }

    public String getBody() {
        return body;
    }

    public void setBody(String body) {
        this.body = body;
    }

    public String getCanDelete() {
        return canDelete;
    }

    public String getCanReply() {
        return canReply;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSubject() {
        return subject;
    }
}

и наконец вот как я пытаюсь закинуть данные в textView:
String[] file_name = Objects.requireNonNull(response.body()).getAttachesNames();
                    for (int c=0;c<file_name.length-1;c++)
                        txt.append(file_name[c]+"\n");

                    if (file_name.length > 0) {
                        setEmptyBackground(bt);
                    } else {
                        bt.setEnabled(false);
                        txt.setText("No attachment)");
                    }


может мне каким-то другим способом вытаскивать названия или названия прикрепленных файлов, потому-что я никак не могу вытащить название из ответа сервера, ромбы у меня мне кажется из-за проблем с кодировкой, но не факт. Если кто понял в чем проблема то буду очень благодарен если укажите мне на нее, или посоветует ее решение.
  • Вопрос задан
  • 58 просмотров
Ответы на вопрос 1
402d
@402d
начинал с бейсика на УКНЦ в 1988
ромбы у меня мне кажется из-за проблем с кодировкой, но не факт.
https://www.anekdot.ru/id/232085/

проверяйте что уходит. что приходит. чего вы тащите по всем этапам.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы