android 把file资源转file,android 将asset资源转File对象

本文介绍如何在Android中将assets目录下的文件转换为File对象。通过使用Activity的getAssets()方法打开输入流,然后写入到指定路径的输出流,实现文件复制。详细步骤包括创建目标目录、读取assets文件、写入文件并关闭流。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

android下,如果将项目中assets目录下的文件转换为File对象呢?废话不多说,直接上代码。

import android.app.Activity;

import android.os.Environment;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

public class FileUtils {

public static final String BASE_PATH = Environment.getExternalStorageDirectory().getAbsolutePath()+ "/game/storyprogrammer";

/** 临时目录*/

public static final String BASE_TEMP_PATH = BASE_PATH + "/temp";

private Activity activity;

public FileUtils(Activity context) {

activity = context;

}

/**

* 复制assets下的文件时用这个方法

* @throws IOException

*/

public void copyBigDataBase(String assetName, String savepath, String savename) throws IOException {

InputStream myInput;

File dir = new File(savepath);

if (!dir.exists()) {

dir.mkdirs();

}

File dbf = new File(savepath + savename);

if (dbf.exists()) {

dbf.delete();

}

String outFileName = savepath + savename;

OutputStream myOutput = new FileOutputStream(outFileName);

myInput = activity.getAssets().open(assetName);

byte[] buffer = new byte[1024];

int length;

while ((length = myInput.read(buffer)) > 0) {

myOutput.write(buffer, 0, length);

}

myOutput.flush();

myInput.close();

myOutput.close();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值