最近项目中要用到File这个类,温故而知新,回过头来回顾下这个File类,File类主要是对磁盘目录,文件进行操作的Api,具体其实查JDK api 的File全能获取到。

下面写一些文件目录的基本操作练习一下:

1. 列出文件目录和文件,文件随机访问

package com.dcz.io;

import java.io.File;
import java.io.RandomAccessFile; public class RandomAccessFileDemo { public static void main(String[] args) throws Exception { File dir = new File("E:\\迅雷下载"); if(!dir.exists()){
throw new IllegalAccessException("给定的目录不存在!");
} if(!dir.isDirectory()){
throw new IllegalAccessException("给定的不是一个目录");
} File[] files = dir.listFiles();
for(File f : files){
if(f.isDirectory()){
FileUtil.listDirectory(f);
}else{
System.out.println(f);
}
} // -------------------------------------------------------------- // 创建目录
File fileDir = new File("file");
if(!fileDir.exists()){
fileDir.mkdir();
}
// 创建文件
File file = new File(fileDir, "abc.txt");
if(!file.exists()){
file.createNewFile();
} RandomAccessFile randomAccessFile = new RandomAccessFile(file, "rw"); // 读取文件指针【文件指针为:0】
System.out.println("文件指针位置:" + randomAccessFile.getFilePointer()); // 写字符(从API中可以查看到可以写很多类型的数据)
randomAccessFile.write('a'); // 读取文件指【文件指针为:1】
System.out.println("文件指针位置:" + randomAccessFile.getFilePointer()); // 写数字
randomAccessFile.writeInt(12); // 读取文件指【文件指针为:5】
System.out.println("文件指针位置:" + randomAccessFile.getFilePointer()); // 写中文
String str = "成长";
byte[] strArray = str.getBytes("GBK");
randomAccessFile.write(strArray);
// 读取文件指【文件指针为:9】
System.out.println("文件指针位置:" + randomAccessFile.getFilePointer()); // 文件指针归零
randomAccessFile.seek(0); // 创建缓冲
byte[] buffer = new byte[(int)randomAccessFile.length()];
// 读取文件内容
randomAccessFile.read(buffer); String fileContent = new String(buffer, "gbk"); // 打印文件内容
System.out.println("文件内容是:" + fileContent); // 关闭
randomAccessFile.close();
} }

Java File 常用操作回顾的更多相关文章

  1. java file 常用操作

    File file = new File("D:\\javaClass\\image"); // 测试此抽象路径名表示的文件或目录是否存在. // 当且仅当此抽象路径名表示的文件或 ...

  2. Java Map常用操作

    Java之map常用操作 package basic; import java.util.HashMap; import java.util.Map; /** *Map常用操作方法 */ public ...

  3. Java 线程常用操作

    继Java线程生命周期继续学习Java线程其他常用操作 线程的常用操作 设置线程名字:setName() 获取线程名称:getName() 线程唯一Id:getId() // 自定义线程名称 Stri ...

  4. Java IO基础--File常用操作(递归)

    File中经常会使用递归方法打印属性结构.统计文件夹下文件个数.子文件夹个数以及文件大小,可以作为递归的应用练习. 递归的写法,百度一搜一大堆,这里我使用对javabean方式封装了一下: packa ...

  5. HDFS Java API 常用操作

    package com.luogankun.hadoop.hdfs.api; import java.io.BufferedInputStream; import java.io.File; impo ...

  6. JAVA File常用的API介绍

    package coreJava; import java.io.File; import java.io.IOException; public class FileDemo { public st ...

  7. Java File文件操作 创建文件\目录,删除文件\目录

    Java手册 java.io 类 File java.lang.Object java.io.File 所有已实现的接口: Serializable, Comparable<File> p ...

  8. java File文件操作共用方法整理

    package org.jelly.util; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io ...

  9. java集合常用操作

    收集一些常用集合操作的代码,用于治疗健忘症,:) set转list //构造Map数据 Map<String, String> map = new HashMap<String, S ...

随机推荐

  1. easyUI的控件

    CSS类定义: div easyui-window                               window窗口样式 属性如下: 1)       modal:是否生成模态窗口.tru ...

  2. BZOJ3160: 万径人踪灭

    设a[i]=bool(s[i]=='a'),b[i]=bool(s[i]=='b'),考虑a和a.b和b的卷积,由于卷积是对称的,就可以统计出不连续回文子串个数了.可能说得比较简略.再用manache ...

  3. mongdb查询与排序

    db.QResult.find({'CreateDate':{'$gte' : ISODate('2016-07-01'), '$lte' : ISODate('2016-08-01')}}).sor ...

  4. ecshop 变量表

    get_goods_info($goods_id) 商品详情 get_sales_count($goods_id)  商品销量 get_promote_goods()   参与促销商品  Mobile

  5. Memcached【Magent+Memcached】集群

    Memcached介绍  事件处理libevent是个程序库,它将Linux的epoll.BSD类操作系统的kqueue等事件处理功能封装成统一的接口.即使对服务器的连接数增加,也能发挥O(1)的性能 ...

  6. HTML5 LocalStorage 本地存储,刷新值还在

    H5的两种存储技术的最大区别就是生命周期. 1. localStorage是本地存储,存储期限不限: 2. sessionStorage会话存储,页面关闭数据就会丢失. 使用方法: localStor ...

  7. python 选择排序

    选择排序算法的思想,首先第一次先从整个序列中选择最小的数,然后放到第一位,然后再从第二位到最后一位选择出最小的一个数,把这个数放到第二位,然后,再从第三位到最后一位选择其中最小的数放到第三位,这样一直 ...

  8. PhpStorm 快捷键

    不容易记住的: Ctrl + Shift + F  查找文本,在项目目录或指定的目录 Ctrl + Shift + R  查找文本并替换,在项目目录或指定的目录 Ctrl + E    打开最近关闭的 ...

  9. easyui的textbox和validatebox的 赋值区别

    区别代码如下: textbox:$('userId').textbox('setValue','aaa'); validatebox :$('userId').val('aaa');  

  10. Apple Pay

    Apple Pay运行环境:iPhone6以上设备,操作系统最低iOS9.0以上,部分信息设置需要iOS9.2以上.目前还不支持企业证书添加. 环境搭建好后可以在模拟器上面运行,xcode7.2.1+ ...