先说一说为甚什么遇到这个问题。
在新版本当中,分配权限,保存url还是不允许操作
研究很久,直接看下面代码直接使用
package com.ccf.feige.txtread.until;
import android.content.Context;
import java.io.*;
public class FileHandler {
// 读取文件通过文件名
// 读取文件通过文件名
public static String readFile(Context context, String fileName) {
StringBuilder content = new StringBuilder();
try {
FileInputStream fis = context.openFileInput(fileName);
BufferedReader reader = new BufferedReader(new InputStreamReader(fis));
String line;
while ((line = reader.readLine()) != null) {
content.append(line).append("\n");
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
return content.toString();
}
// 输入文件内容并返回文件名
// 输入文件内容并返回文件名
public static String writeFile(Context context, String content) {
String fileName = "file_" + System.currentTimeMillis() + ".txt";
try {
FileOutputStream fos = context.openFileOutput(fileName, Context.MODE_PRIVATE);
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(fos));
writer.write(content);
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
return fileName;
}
// 生成唯一文件名
private static String generateFileName(Context context) {
String fileName = "file_" + System.currentTimeMillis() + ".txt";
File file = new File(context.getFilesDir(), fileName);
return file.getAbsolutePath();
}
// 以下为示例调用代码,在实际项目中需要替换为对应的Activity或Fragment的Context
public static void main(String[] args) {
// 这里需要替换为你的Activity或Fragment的Context
Context context = null;
// 测试写入文件并返回文件名
String content = "这是要写入的内容。";
String fileName = writeFile(context, content);
System.out.println("文件已写入:" + fileName);
// 测试读取文件
String readContent = readFile(context, fileName);
System.out.println("文件内容:\n" + readContent);
}
}