位置: 编程技术 - 正文

工具类(2)文件操作工具类(工具类的作用)

编辑:rootadmin

推荐整理分享工具类(2)文件操作工具类(工具类的作用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:工具类的作用,工具类是啥,什么叫工具类,工具类怎么写,工具类怎么写,工具文里的工具都有啥,工具文里的工具都有啥,工具类是啥,内容如对您有帮助,希望把文章链接给更多的朋友!

这些工具类是由开源项目中获取得到

工具类(2)文件操作工具类(工具类的作用)

public class FileUtils {

/*** 写文本文件 在Android系统中,文件保存在 /data/data/PACKAGE_NAME/files 目录下* * @param context* @param msg*/public static void write(Context context, String fileName, String content) {if (content == null)content = "";try {FileOutputStream fos = context.openFileOutput(fileName,Context.MODE_PRIVATE);fos.write(content.getBytes());fos.close();} catch (Exception e) {e.printStackTrace();}}/*** 读取文本文件* * @param context* @param fileName* @return*/public static String read(Context context, String fileName) {try {FileInputStream in = context.openFileInput(fileName);return readInStream(in);} catch (Exception e) {e.printStackTrace();}return "";}public static String readInStream(InputStream inStream) {try {ByteArrayOutputStream outStream = new ByteArrayOutputStream();byte[] buffer = new byte[];int length = -1;while ((length = inStream.read(buffer)) != -1) {outStream.write(buffer, 0, length);}outStream.close();inStream.close();return outStream.toString();} catch (IOException e) {Log.i("FileTest", e.getMessage());}return null;}public static File createFile(String folderPath, String fileName) {File destDir = new File(folderPath);if (!destDir.exists()) {destDir.mkdirs();}return new File(folderPath, fileName &#; fileName);}/*** 向手机写图片* * @param buffer* @param folder* @param fileName* @return*/public static boolean writeFile(byte[] buffer, String folder,String fileName) {boolean writeSucc = false;boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);String folderPath = "";if (sdCardExist) {folderPath = Environment.getExternalStorageDirectory()&#; File.separator &#; folder &#; File.separator;} else {writeSucc = false;}File fileDir = new File(folderPath);if (!fileDir.exists()) {fileDir.mkdirs();}File file = new File(folderPath &#; fileName);FileOutputStream out = null;try {out = new FileOutputStream(file);out.write(buffer);writeSucc = true;} catch (Exception e) {e.printStackTrace();} finally {try {out.close();} catch (IOException e) {e.printStackTrace();}}return writeSucc;}/*** 根据文件绝对路径获取文件名* * @param filePath* @return*/public static String getFileName(String filePath) {if (StringUtils.isEmpty(filePath))return "";return filePath.substring(filePath.lastIndexOf(File.separator) &#; 1);}/*** 根据文件的绝对路径获取文件名但不包含扩展名* * @param filePath* @return*/public static String getFileNameNoFormat(String filePath) {if (StringUtils.isEmpty(filePath)) {return "";}int point = filePath.lastIndexOf('.');return filePath.substring(filePath.lastIndexOf(File.separator) &#; 1,point);}/*** 获取文件扩展名* * @param fileName* @return*/public static String getFileFormat(String fileName) {if (StringUtils.isEmpty(fileName))return "";int point = fileName.lastIndexOf('.');return fileName.substring(point &#; 1);}/*** 获取文件大小* * @param filePath* @return*/public static long getFileSize(String filePath) {long size = 0;File file = new File(filePath);if (file != null && file.exists()) {size = file.length();}return size;}/*** 获取文件大小* * @param size* 字节* @return*/public static String getFileSize(long size) {if (size <= 0)return "0";java.text.DecimalFormat df = new java.text.DecimalFormat("##.##");float temp = (float) size / ;if (temp >= ) {return df.format(temp / ) &#; "M";} else {return df.format(temp) &#; "K";}}/*** 转换文件大小* * @param fileS* @return B/KB/MB/GB*/public static String formatFileSize(long fileS) {java.text.DecimalFormat df = new java.text.DecimalFormat("#.");String fileSizeString = "";if (fileS < ) {fileSizeString = df.format((double) fileS) &#; "B";} else if (fileS < ) {fileSizeString = df.format((double) fileS / ) &#; "KB";} else if (fileS < ) {fileSizeString = df.format((double) fileS / ) &#; "MB";} else {fileSizeString = df.format((double) fileS / ) &#; "G";}return fileSizeString;}/*** 获取目录文件大小* * @param dir* @return*/public static long getDirSize(File dir) {if (dir == null) {return 0;}if (!dir.isDirectory()) {return 0;}long dirSize = 0;File[] files = dir.listFiles();for (File file : files) {if (file.isFile()) {dirSize &#;= file.length();} else if (file.isDirectory()) {dirSize &#;= file.length();dirSize &#;= getDirSize(file); // 递归调用继续统计}}return dirSize;}/*** 获取目录文件个数* * @param f* @return*/public long getFileList(File dir) {long count = 0;File[] files = dir.listFiles();count = files.length;for (File file : files) {if (file.isDirectory()) {count = count &#; getFileList(file);// 递归count--;}}return count;}public static byte[] toBytes(InputStream in) throws IOException {ByteArrayOutputStream out = new ByteArrayOutputStream();int ch;while ((ch = in.read()) != -1) {out.write(ch);}byte buffer[] = out.toByteArray();out.close();return buffer;}/*** 检查文件是否存在* * @param name* @return*/public static boolean checkFileExists(String name) {boolean status;if (!name.equals("")) {File path = Environment.getExternalStorageDirectory();File newPath = new File(path.toString() &#; name);status = newPath.exists();} else {status = false;}return status;}/*** 检查路径是否存在* * @param path* @return*/public static boolean checkFilePathExists(String path) {return new File(path).exists();}/*** 计算SD卡的剩余空间* * @return 返回-1,说明没有安装sd卡*/public static long getFreeDiskSpace() {String status = Environment.getExternalStorageState();long freeSpace = 0;if (status.equals(Environment.MEDIA_MOUNTED)) {try {File path = Environment.getExternalStorageDirectory();StatFs stat = new StatFs(path.getPath());long blockSize = stat.getBlockSize();long availableBlocks = stat.getAvailableBlocks();freeSpace = availableBlocks * blockSize / ;} catch (Exception e) {e.printStackTrace();}} else {return -1;}return (freeSpace);}/*** 新建目录* * @param directoryName* @return*/public static boolean createDirectory(String directoryName) {boolean status;if (!directoryName.equals("")) {File path = Environment.getExternalStorageDirectory();File newPath = new File(path.toString() &#; directoryName);status = newPath.mkdir();status = true;} elsestatus = false;return status;}/*** 检查是否安装SD卡* * @return*/public static boolean checkSaveLocationExists() {String sDCardStatus = Environment.getExternalStorageState();boolean status;if (sDCardStatus.equals(Environment.MEDIA_MOUNTED)) {status = true;} elsestatus = false;return status;}/*** 检查是否安装外置的SD卡* * @return*/public static boolean checkExternalSDExists() {Map<String, String> evn = System.getenv();return evn.containsKey("SECONDARY_STORAGE");}/*** 删除目录(包括:目录里的所有文件)* * @param fileName* @return*/public static boolean deleteDirectory(String fileName) {boolean status;SecurityManager checker = new SecurityManager();if (!fileName.equals("")) {File path = Environment.getExternalStorageDirectory();File newPath = new File(path.toString() &#; fileName);checker.checkDelete(newPath.toString());if (newPath.isDirectory()) {String[] listfile = newPath.list();// delete all files within the specified directory and then// delete the directorytry {for (int i = 0; i < listfile.length; i&#;&#;) {File deletedFile = new File(newPath.toString() &#; "/"&#; listfile[i].toString());deletedFile.delete();}newPath.delete();Log.i("DirectoryManager deleteDirectory", fileName);status = true;} catch (Exception e) {e.printStackTrace();status = false;}} elsestatus = false;} elsestatus = false;return status;}/*** 删除文件* * @param fileName* @return*/public static boolean deleteFile(String fileName) {boolean status;SecurityManager checker = new SecurityManager();if (!fileName.equals("")) {File path = Environment.getExternalStorageDirectory();File newPath = new File(path.toString() &#; fileName);checker.checkDelete(newPath.toString());if (newPath.isFile()) {try {Log.i("DirectoryManager deleteFile", fileName);newPath.delete();status = true;} catch (SecurityException se) {se.printStackTrace();status = false;}} elsestatus = false;} elsestatus = false;return status;}/*** 删除空目录* * 返回 0代表成功 ,1 代表没有删除权限, 2代表不是空目录,3 代表未知错误* * @return*/public static int deleteBlankPath(String path) {File f = new File(path);if (!f.canWrite()) {return 1;}if (f.list() != null && f.list().length > 0) {return 2;}if (f.delete()) {return 0;}return 3;}/*** 重命名* * @param oldName* @param newName* @return*/public static boolean reNamePath(String oldName, String newName) {File f = new File(oldName);return f.renameTo(new File(newName));}/*** 删除文件* * @param filePath*/public static boolean deleteFileWithPath(String filePath) {SecurityManager checker = new SecurityManager();File f = new File(filePath);checker.checkDelete(filePath);if (f.isFile()) {Log.i("DirectoryManager deleteFile", filePath);f.delete();return true;}return false;}/*** 清空一个文件夹* @param files*/public static void clearFileWithPath(String filePath) {List<File> files = FileUtils.listPathFiles(filePath);if (files.isEmpty()) {return;}for (File f : files) {if (f.isDirectory()) {clearFileWithPath(f.getAbsolutePath());} else {f.delete();}}}/*** 获取SD卡的根目录* * @return*/public static String getSDRoot() {return Environment.getExternalStorageDirectory().getAbsolutePath();}/*** 获取手机外置SD卡的根目录* * @return*/public static String getExternalSDRoot() {Map<String, String> evn = System.getenv();return evn.get("SECONDARY_STORAGE");}/*** 列出root目录下所有子目录* * @param path* @return 绝对路径*/public static List<String> listPath(String root) {List<String> allDir = new ArrayList<String>();SecurityManager checker = new SecurityManager();File path = new File(root);checker.checkRead(root);// 过滤掉以.开始的文件夹if (path.isDirectory()) {for (File f : path.listFiles()) {if (f.isDirectory() && !f.getName().startsWith(".")) {allDir.add(f.getAbsolutePath());}}}return allDir;}/*** 获取一个文件夹下的所有文件* @param root* @return*/public static List<File> listPathFiles(String root) {List<File> allDir = new ArrayList<File>();SecurityManager checker = new SecurityManager();File path = new File(root);checker.checkRead(root);File[] files = path.listFiles();for (File f : files) {if (f.isFile())allDir.add(f);else listPath(f.getAbsolutePath());}return allDir;}public enum PathStatus {SUCCESS, EXITS, ERROR}/*** 创建目录* * @param path*/public static PathStatus createPath(String newPath) {File path = new File(newPath);if (path.exists()) {return PathStatus.EXITS;}if (path.mkdir()) {return PathStatus.SUCCESS;} else {return PathStatus.ERROR;}}/*** 截取路径名* * @return*/public static String getPathName(String absolutePath) {int start = absolutePath.lastIndexOf(File.separator) &#; 1;int end = absolutePath.length();return absolutePath.substring(start, end);}/*** 获取应用程序缓存文件夹下的指定目录* @param context* @param dir* @return*/public static String getAppCache(Context context, String dir) {String savePath = context.getCacheDir().getAbsolutePath() &#; "/" &#; dir &#; "/";File savedir = new File(savePath);if (!savedir.exists()) {savedir.mkdirs();}savedir = null;return savePath;}}

Linux Mint配置android环境(java+eclipse+adt+android_sdk) 今天在Linuxmint上配置android,弄了好长时间才弄好,写下安装记录,也方便以后查看。哈哈!大家如果使用Linux应该知道,linux自带了OpenJDK的java,但是功

工具类(3)HTML相关的正则表达式工具类 该工具类由开源项目中获得publicclassHtmlRegexpUtils{privatefinalstaticStringregxpForHtml=([^]*);//过滤所有以开头以结尾的标签privatefinalstaticStringregxpForImgTag=\s*img\s([^

android怎么彻底关闭一个程序 本文为转载:

标签: 工具类的作用

本文链接地址:https://www.jiuchutong.com/biancheng/384293.html 转载请保留说明!

上一篇:Android的拖放技术(android拖拽)

下一篇:Linux Mint配置android环境(java+eclipse+adt+android_sdk)(linux如何配置)

  • 注册公司不开账户可以吗
  • 工资个税计算公式2020
  • 金税盘维护费应该计入什么科目
  • 工程款增值税专用发票如何开具
  • 车辆保险车船税怎么做会计分录
  • 交社保不发工资怎么办
  • 零申报印花税怎么填写
  • 单用途卡与多用途卡
  • 完税证明必须本人办理吗
  • 符合条件的居民企业之间股息红利
  • 最新的税收政策
  • 小规模纳税人开票税率
  • 政府补助的失业金发放准时吗
  • 溢价收购怎么做账
  • 原材料采购没正式发票能否入账?
  • 受托委托加工物资成本包括什么
  • 标书费收据丢失怎么办
  • 生产成本的明细账怎么登记
  • 实收资本印花税税率
  • 金蝶结转损益后怎么进下一期
  • 工厂材料成本改善报告范文
  • 上市公司股票下跌可以减持吗
  • 附加税要先计提再支付吗
  • php数据库分页是怎么实现的
  • Win11文件夹怎么加密设置密码
  • php 字符串 数组
  • win10dev预览版
  • vue-admin-master
  • 企业购入设备涉及的税种
  • php版本7和5区别
  • 免税企业税金及附加计算
  • 企业生产车间发生的直接材料费用属于生产费用
  • 如何成功安装暗区突围
  • python uiautomator2的点击操作
  • 销售返点什么意思
  • 列入固定资产的金额标准
  • 税额和税率一样吗
  • 第四季度所得税跟汇算清缴是一样吗
  • sqlserver2005使用
  • 纳税人增值税专用发票票面价税合计最多开多少金额
  • 存货报废进项税转出吗
  • 为什么购买办公用品
  • 财务人员如何爱岗敬业
  • 一次开票分期确认收入
  • 购买土地需要缴纳哪些费用
  • 开发成本存货怎么算
  • 投资软件和信息技术服务业
  • 汽车固定资产清理怎么交税
  • 零工发生事故算工伤吗
  • 盈余公积的会计分录
  • 预缴土地增值税的会计处理
  • 专票三流合一指哪三流
  • 进项税额转出在哪里查
  • 发票入账有效期是多长时间
  • 印花税税款所属期怎么填
  • 财付通入帐中
  • 违反会计法规定的行为有哪些
  • 商业零售企业商品进销差价
  • mysql必知必会读后感2000字
  • 删除sql server2008
  • mysql存文章的字段设置为多大?
  • win10系统提醒
  • debian glibc
  • win10系统开机密码设置方法
  • 优麒麟 apk
  • xp输入法图标不显示图片
  • shell脚本语言入门
  • perl-v
  • 批处理文件的拷贝怎么写
  • jquery教程与例子
  • python3遍历字典
  • js对象值如何表示
  • js正则regexp
  • 国税系统重点领导名单
  • 网上发票分配
  • 中华人民共和国成立于1949年10月1日到今年是多少周年
  • 江苏省镇江市街道名称
  • 补贴收入有哪些
  • 大东地税局
  • 怎么注册山东省电子税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设