拓展:文件管理工具类—FileUtil 实现的功能:获得外部存储绝对路径、创建文件夹、创建文件、遍历文件夹下的所有文件、获得指定文件、删除文件夹里的所有文件、删除文件、向文件中的指定位置添加String内容、修改文件内容(覆盖或者添加String)、读取文件内容String、重命名文件、复制文件夹、复制文件、拷贝图片文件、修改文件内容String(相对路径)。。。
一、功能描述
打开文件管理器,选择本地txt,按行读取内容,按一定格式整理每行内容,显示在界面上,并保存副本txt在同一个文件夹里。
注意:
1.请把txt保存格式修改为utf-8,否则文本会乱码(打开文件,另存为,修改保存格式)
2.动态申请写入权限!!!
二、运行效果
三、技术点讲解
1、声明内存读取权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
2、动态请求内存读取权限
private String[] permissions = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};
/**
* 开始提交请求权限
*/
private void startRequestPermission() {
ActivityCompat.requestPermissions(MainActivity.this, permissions, RESULT_SUCCESS);
}
/**
* 用户权限 申请 的回调方法
*
* @param requestCode
* @param permissions
* @param grantResults
*/
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == RESULT_SUCCESS) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
isGetPermission = true;
}
} else {
isGetPermission = true;
}
}
if (!isGetPermission) {
llMain.setVisibility(View.GONE);
} else {
llMain.setVisibility(View.VISIBLE);
}
}