Android实现文件的保存和读取
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; public class FileStorageUtils { /** * 保存字符串到指定路径的文件 * @param filePath 文件路径(带上文件名) * @param data 要保存的数据 */ public static void saveDataToFile(String filePath, String data) { try { FileOutputStream fos = new FileOutputStream(filePath); fos.write(data.getBytes()); fos.close(); } catch (IOException e) { e.printStackTrace(); } } /** * 从指定路径的文件中读取字符串 * @param filePath 文件路径(带上文件名) * @return 文件中保存的字符串,如果文件不存在返回 null */ public static String loadDataFromFile(String filePath) { StringBuilder sb = new StringBuilder(); try { FileInputStream fis = new FileInputStream(filePath); InputStreamReader isr = new InputStreamReader(fis); BufferedReader br = new BufferedReader(isr); String line; while ((line = br.readLine()) != null) { sb.append(line); } fis.close(); isr.close(); br.close(); } catch (IOException e) { e.printStackTrace(); return null; } return sb.toString(); } /** * 判断指定的文件是否存在 * @param filePath 文件路径 * @return 文件存在返回 true,否则返回 false */ public static boolean isFileExist(String filePath) { File file = new File(filePath); return file.exists(); } /** * 删除指定的文件 * @param filePath 文件路径 */ public static void deleteFile(String filePath) { File file = new File(filePath); if (file.exists()) { file.delete(); } } }
权限问题
写入内部储存是不要权限的/data/data/xxx.xxx.xxx/files
写入/sdcard/Download是要读写外部储存权限的
我要存什么文件一般就在这两个地方,其他地方会根据安卓的版本的不同而不同很麻烦