整理的Android工具类,封装文件读写操作
1.创建文件功能;
2.向文件中写入字节数组;
3.向文件中写入字符串;
4.从文件中读取字节数组;
5.从文件中读取字符串;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- /**
- * 文件读写工具类
- *
- * @author bear
- *
- */
- public class FileUtil {
- /**
- * 如果文件不存在,就创建文件
- *
- * @param path 文件路径
- * @return
- */
- public static String createIfNotExist(String path) {
- File file = new File(path);
- if (!file.exists()) {
- try {
- file.createNewFile();
- } catch (Exception e) {
- System.out.println(e.getMessage());
- }
- }
- return path;
- }
- /**
- * 向文件中写入数据
- *
- * @param filePath
- * 目标文件全路径
- * @param data
- * 要写入的数据
- * @return true表示写入成功 false表示写入失败
- */
- public static boolean writeBytes(String filePath, byte[] data) {
- try {
- FileOutputStream fos = new FileOutputStream(filePath);
- fos.write(data);
- fos.close();
- return true;
- } catch (Exception e) {
- System.out.println(e.getMessage());
- }
- return false;
- }
- /**
- * 从文件中读取数据
- *
- * @param file
- * @return
- */
- public static byte[] readBytes(String file) {
- try {
- FileInputStream fis = new FileInputStream(file);
- int len = fis.available();
- byte[] buffer = new byte[len];
- fis.read(buffer);
- fis.close();
- return buffer;
- } catch (Exception e) {
- System.out.println(e.getMessage());
- }
- return null;
- }
- /**
- * 向文件中写入字符串String类型的内容
- *
- * @param file
- * 文件路径
- * @param content
- * 文件内容
- * @param charset
- * 写入时候所使用的字符集
- */
- public static void writeString(String file, String content, String charset) {
- try {
- byte[] data = content.getBytes(charset);
- writeBytes(file, data);
- } catch (Exception e) {
- System.out.println(e.getMessage());
- }
- }
- /**
- * 从文件中读取数据,返回类型是字符串String类型
- *
- * @param file
- * 文件路径
- * @param charset
- * 读取文件时使用的字符集,如utf-8、GBK等
- * @return
- */
- public static String readString(String file, String charset) {
- byte[] data = readBytes(file);
- String ret = null;
- try {
- ret = new String(data, charset);
- } catch (Exception e) {
- System.out.println(e.getMessage());
- }
- return ret;
- }
- }