Bonjour,
j'essaye de concaténer 3 fichiers (2 de dossier res/raw et une identifié par une URL) ...
voilà mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
final int promptId =
                Class.forName(R.class.getName() + "$raw").getDeclaredField("raw1").getInt(null);
            final AssetInputStream prompt =
                (AssetInputStream) VVMApplication.getContext().getResources().openRawResource(promptId);
 
            final int promptId3 =
                            Class.forName(R.class.getName() + "$raw").getDeclaredField("raw2").getInt(null);
                        final AssetInputStream prompt3 =
                            (AssetInputStream) VVMApplication.getContext().getResources().openRawResource(promptId3);           
            final FileOutputStream fos = new FileOutputStream(PROMPT_TEMP_FILE, false);
            final File file = new File(fileUri.getPath());
            final int length = (int) (file.length() + prompt.available()+prompt3.available());
            final byte[] buffer = new byte[length];
            FileInputStream fis = new FileInputStream(file);
            fis.read(buffer);
            prompt.read(buffer);
            prompt3.skip(6);
            prompt3.read(buffer, (int) file.length()+prompt.available(), prompt3.available());
            fos.write(buffer);
            fos.close();
            fis.close();
            return Uri.fromFile(PROMPT_TEMP_FILE);
Les 3 fichiers sont concaténer mais le problème que la 2eme fichier est coupé , on entend juste la 2eme moitié de fichier....

Je vais les concaténer dans un fichier FileOutputStream sous la forme file de raw1 + File + file de raw2

Solution ?

Merci.