一、效果:
安装apk到用户手机上时在用户的SDCard创建文件夹(其实就是建立你唯一的应用的目录咯),以及复制一些你不想编译而有用的文件到你的目录下!
二、关键点:
1、得到sdcard的路径:android.os.Environment.getExternalStorageDirectory().getAbsolutePath()一般都会得到路径“/mnt/sdcard"
2、将你需要复制到用户sdcard的文件放到android代码res/raw路径如”res/raw/flycatdeng.txt",放在raw中的文件不会被编译。通过getResources().openRawResource(R.raw.flycatdeng);方式来获得这个资源,返回InputStream输入流。
3、得到目录或文件 File file=new File(String path); 判断是否有这个文件或目录file.exists(),返回true则表示存在;
4、如果目录不存在则需要创建目录(文件夹),file.mkdirs();//这里非常需要注意,如果是只有一个文件夹的话可以用mkdir(),但是如果你要再文件夹中还要有文件夹的话则需要用到mkdirs()
5、输入输出文件流,可见以下代码
6、最最最关键的是一定要在AndroidManifest.xml文件中配置添加用户权限:
sdcard创建和删除的文件的权限:
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
sdcard文件写入内容的权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
三、源码:
public class MainActivity extends Activity {
private String fileDirPath = android.os.Environment
.getExternalStorageDirectory().getAbsolutePath()// 得到外部存储卡的数据库的路径名
+ "/Mulu01/Mulu02/Mulu03";// 我要存储的目录
private String fileName = "flycatdeng.txt";// 要存储的文件名
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createFile();// 创建目录及文件
}
private void createFile() {
String filePath = fileDirPath + "/" + fileName;// 文件路径
try {
File dir = new File(fileDirPath);// 目录路径
if (!dir.exists()) {// 如果不存在,则创建路径名
System.out.println("要存储的目录不存在");
if (dir.mkdirs()) {// 创建该路径名,返回true则表示创建成功
System.out.println("已经创建文件存储目录");
} else {
System.out.println("创建目录失败");
}
}
// 目录存在,则将apk中raw中的需要的文档复制到该目录下
File file = new File(filePath);
if (!file.exists()) {// 文件不存在
System.out.println("要打开的文件不存在");
InputStream ins = getResources().openRawResource(
R.raw.flycatdeng);// 通过raw得到数据资源
System.out.println("开始读入");
FileOutputStream fos = new FileOutputStream(file);
System.out.println("开始写出");
byte[] buffer = new byte[8192];
int count = 0;// 循环写出
while ((count = ins.read(buffer)) > 0) {
fos.write(buffer, 0, count);
}
System.out.println("已经创建该文件");
fos.close();// 关闭流
ins.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
在SDCard上创建文件夹,包括权限的添加
打开sdcard文件夹。只显示文件夹和txt文件。过滤非txt文件。选择txt文件返回其名字。
android 默认安装apk 到sdcard tf 卡
在SDcard里新建一个文件和文件夹并修改权限apk源码 亲自写的
Android-SD卡文件夹创建和删除实现 * 获取SD卡中的目录 * 功能: * 创建文件夹,删除文件夹,返回键退出程序 * ListView 使用BaseAdapter
四、点击左上角的 Choose In/Out,选择需要签名的APK文件(从电脑上复制过来的APK文件在内存卡中,就需要找到sdcard/文件夹,这个是内存卡) 五、选择好要签名的APK文件后,直接点击最下面的 Sign The File 就OK啦...
NULL 博文链接:https://4225953-163-com.iteye.com/blog/830062
检测当前Android系统中是否存在sdcard,如果存在就在sdcard中创建一个文件,并用java中的FileOutputStream往sdcard中写入内容
本excel中记录了miui 系统中 软件或者系统在sd卡中建立的缓存文件或文件夹的名称 以及所对应的程序 并附建议性删除选项
android 无sdcard 下载安装 apk 多线程 断点 自动安装apk
打开别的APK(testsize.apk) 1.先根据包名(com.example.testsize)来判断 testsize.apk 是否安装 ... 1.2.2 文件存在则调用系统方法 安装文件,并打开main activty 建议:别的apk放到assets目录下
今天小编就为大家分享一篇Android获取SDcard目录及创建文件夹的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
预置一些文件到系统sdcard目录
代码如下:// 读取sdcard文件private void sdcardRead(){String fileName = “/sdcard/my_sdcard.txt”;// assets下文件//String fileName = “/sdcard/test/my_sdcard_test.txt”;// sdcard下子目录文件String ret =...
Android 遍历SDCARD的文件夹并显示目录信息 private String mResult = new String(); private String[] mFileList = null; 1)、显示所有文件/ File flist = new File(/mnt/sdcard); mFileList = flist....
android调试sdcard文件加载,解决不能传入文件问题: 只需要执行4个命令,win和mac下都好使。
step 3:检测sdcard中mana文件夹下是否有test.txt文件,如果有则读取文件内容,如果没有则从assets中把test.txt文件拷贝到sdcard的mana文件夹下,然后读取sdcard中的test.txt文件内容。 step 4:把文件内容显示到...
android 写入SDcard 文件,通俗易懂,适合初学者