Android--在手机SD卡上新建一个自定义文件夹并在新建文件夹目录下新建一个文件

唉,我虽然只是一枚Android菜鸡,但是做人得对得起吃瓜群众不是,不能老是喜欢吃人家的“果”,而自己却不“种树”不是。所以呢这是我第一次写博客,不知道该怎么写才能让读者看起来比较舒心,如果写的不好,还请大家不要介意=.=,如果大家有什么好的建议的话,可以直接私聊我。哈哈~废话不多说了。

一、直接上效果图:
1、创建前:
创建文件夹和文件之前的目录
2、创建后:
创建文件夹和文件之后的目录

二、代码部分
1、MainActivity.java

package com.example.createfile;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
    CreateFile createFile;
    Context mContext;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mContext=MainActivity.this;
        setContentView(R.layout.main);
        createFile=new CreateFile();
        createFile.Createfile(mContext);
    }
}

2、CreateFile.java

package com.example.createfile;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import android.content.Context;
import android.widget.Toast;


public class CreateFile {

    public void Createfile(Context mContext){
    String fileName="SdcardFile-"+System.currentTimeMillis()+".txt";
    String filePath="/sdcard/AndroidTest/";
    File file=new File(filePath);{//为什么这里要加个大括弧?不然就报错?

    if(!file.exists()){
        file.mkdirs();
    }
    if(file.exists()&&file.canWrite()){
        File newFile = new File(file.getAbsolutePath()+"/"+fileName);
        FileOutputStream fos = null;
        try{
            newFile.createNewFile();
            if(newFile.exists()&&newFile.canWrite()){
                fos = new FileOutputStream(newFile);
                String str="123456789";
                fos.write(str.getBytes());
                Toast.makeText(mContext, "写入成功!", Toast.LENGTH_SHORT).show();

            }
        }catch(IOException e){
            e.printStackTrace();
            Toast.makeText(mContext, "写入失败!", Toast.LENGTH_SHORT).show();
        }finally{
            if(fos!=null){
                try{
                    fos.flush();
                    fos.close();
                }catch(Exception e){
                    e.printStackTrace();
                }
            }
        }
    }
    }
    }
}

当然啦,因为我们需要用到sdcard的读写操作,所以需要在AndroidManifest.xml中添加权限:
<!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<!-- 往SDCard写入数据权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

好了,到这里代码就结束了。
  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值