在源代码中传输文件的正确方法

时间:2012-10-12 15:48:03

标签: java android

我需要在源代码中传输几个文件。可怕,我知道,但我没有任何其他选择。到目前为止我只存储图像,所以我这样做:

编码图像:

Bitmap bm = BitmapFactory.decodeFile(imagePath);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bm.compress(CompressFormat.PNG, 100, baos);
byte[] b = baos.toByteArray();
String encodedimage = Base64.encodeToString(b, Base64.DEFAULT);

解码图像:

public static Bitmap decodeBitmap(imageString) {
        return BitmapFactory.decodeStream(new ByteArrayInputStream(Base64.decode(imageString, Base64.DEFAULT)));
    }

我使用base64,因此在程序中放置一个新图像更容易,因为它只是一个简单的字符串。

现在我正在尝试将功能扩展到任何文件格式,因此我寻求指导,以确定在代码中存储文件的方法是否较少。

2 个答案:

答案 0 :(得分:0)

对于您应该使用资源文件夹的图像。它内置于系统中。 对于一般最终版,您应该使用资产文件夹和访问权限,如此stackoverflow问题所示:How to get URI from an asset File?

答案 1 :(得分:0)

如果要保留一些数据文件,可以将它们保存在Assets文件夹中,然后使用AssetManager来获取文件。