将字符串转换为inputStream然后存储在R.raw文件夹中?

时间:2018-02-27 19:18:41

标签: android

使用以下代码我设法将存储在R.raw文件夹中的声音文件转换为字符串。

 InputStream inputStream = this.getResources().openRawResource(R.raw.bell_1);
    byte[] bell_sound = new byte[0];
    try {
        bell_sound = new byte[inputStream.available()];
    } catch (IOException e) {
        e.printStackTrace();
    }
    String audioToString = new String(bell_sound);

如何将其从字符串转换回任何格式并存储为名为

的新文件
R.raw.bell_2 
R.raw文件夹中的

2 个答案:

答案 0 :(得分:0)

你不能。资源在运行时是只读的。您无法在应用程序中从Java代码创建新的原始资源。不过,欢迎您将其另存为internal storageexternal storage中的文件。

答案 1 :(得分:0)

您不能在运行时使用raw。 Ir的资源只有在您最初开发应用程序时才能添加。您可以做的是存储在外部存储或内部存储。无论哪种方式,您都必须在android清单文件中声明这些权限,如下所示

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />