Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
gvsp
14 / 3 / 0
Регистрация: 10.11.2015
Сообщений: 71
#1

Записать файл .wav в assets - Программирование Android

20.09.2016, 23:41. Просмотров 283. Ответов 6
Метки нет (Все метки)

Здравствуйте!
Генерирую массив данных с заголовком для wav файла. И не удаётся найти способа записать его в assets. Ни пути ни метода не знаю.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        byte[] FileDot; // тут весь массив с заголовком для wav файла
// записываем в файл
        String FileDotName = "src/main/assets/Dot.wav"; // имя файла с путём. Не уверен в пути.
        FileOutputStream fos = null;
        try {
            fos = openFileOutput(FileDotName, Context.MODE_PRIVATE);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        try {
            fos.write(FileDot.getBytes()); // Ругается Cannot resolve metod getBytes
        } catch (IOException e) {
            e.printStackTrace();
        }
        try {
            fos.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
Тут ругается: Cannot resolve metod getBytes

Java
1
2
3
4
5
6
7
8
9
         byte[] FileDot; // тут весь массив с заголовком для wav файла
// Запись данных в файл
        try {
            String filename = "src/main/assets/Dot.wav"; // имя фала с путём
            FileOutputStream out = new FileOutputStream(filename); // подчёркивает new FileOutputStream(filename)
            out.write(FileDot); // эту строку тоже подчёркивает
        }
        out.close();
    }
Вычислить путь до файла в assets не получается и такими способами:
Java
1
2
3
            // String  filename = Environment.getFilesDir() + "assets/Dot.wav"; // не знает getFilesDir()
            // String  filename = (getAssets().open("Dot.wav"); // не подходит методт getAssets
            // String  filename = mycontext.getAssets().open(Dot.wav); // тоже не подходит
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2016, 23:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Записать файл .wav в assets (Программирование Android):

Как загрузить файл в папку assets?
file = new File("/assets/","sagittarius.xml"); При запуске зависает на...

Assets
Здравствуйте,форумчане) Нигде не могу найти нужной информации((( Мне нужно...

WebView и .html в assets
Как загрузить локальный файл.html из assets в WebView? Через loadUrl...

Write assets folder
Как записать файл в папку активы

Копирование папки из Assets
Всем здравствуйте! Я бы хотел узнать как можно скопировать подпапку (например...

OnUpgrade сторонней БД из assets
Вообщем ситуевина следующего характера.. имеется сторонняя БД в assets.. при...

6
Mikalai
262 / 238 / 95
Регистрация: 11.01.2015
Сообщений: 666
20.09.2016, 23:58 #2
gvsp, assets не предназначен для записи. Из него можно только читать.
0
gvsp
14 / 3 / 0
Регистрация: 10.11.2015
Сообщений: 71
21.09.2016, 00:00  [ТС] #3
Mikalai, А куда можно записать, чтобы playSound мог воспроизводить?
0
Mikalai
262 / 238 / 95
Регистрация: 11.01.2015
Сообщений: 666
21.09.2016, 00:06 #4
В смысле на этапе разработки конечно можно можно записать)) Не вник толком ))
Вот тут почитай.
0
gvsp
14 / 3 / 0
Регистрация: 10.11.2015
Сообщений: 71
21.09.2016, 00:15  [ТС] #5
Mikalai, Ну да, я оттуда звуковые файлы и читаю. А тут надо свой сгенерированный файл туда для чтения положить. Ну если туда, так в другое место. Главное, чтобы можно было его потом подкинуть playSound. Текстовые переменные записывать в файл получается, а байтовый массив не знаю как записать.
0
Mikalai
262 / 238 / 95
Регистрация: 11.01.2015
Сообщений: 666
21.09.2016, 00:17 #6
gvsp, тогда нужно тут читануть
0
gvsp
14 / 3 / 0
Регистрация: 10.11.2015
Сообщений: 71
21.09.2016, 00:21  [ТС] #7
Mikalai, Читано и перечитано. Про то, как писать байтовые массивы нет нигде. Хотя сейчас модифицировал строку fos.write(FileDot.getBytes()); до fos.write(FileDot); и ничего не подчеркнуло. Может прокатит.
0
21.09.2016, 00:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.09.2016, 00:21
Привет! Вот еще темы с решениями:

Assets android безопасность
Добрый день! Файлы находящиеся в assets защищены от копировании "ламерами"?...

Доступ к картинке хранящейся в assets
Подскажите плз. Можно получить доступ к файлам хранящимся в assets через их...

Как локализовать папку assets?
Привет форум! Кто ни будь может объяснить как локализовать папку assets? ...

Работа с файлом из папки Assets
Вопрос к знающим. При старте приложения в методе onCreate() постоянно копирую...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru