IO流详解之代码详解
前面呢已经发了一些理解,整理了注释,整体来说IO这里难度不是很大,代码呢没有详细敲,只写了一个大概总结的内容如下:
/** 一切皆文件:文件是所有操作系统保存数据和处理逻辑的唯一方式:不管是.exe,可执行文件,.sh,rar,zip都是文件.
* 数据库是文件保存数据的一种方式
*
* 文件的信息:
* 我们平常做的:
* 先找到:文件名(全路径,包括扩展名)URI,URL
* D:/akdssald/sds
* 在操作:增删改查
*
* File类中常用方法
* 1 文件路径信息
* 绝对路径
* 父路径: ../
* 相对路径
* 2 文件名属性
* 文件名
* 文件扩展名
* 3 其他属性
* 创建时间
* 最后修改时间
* 目录,文件
* 文件长度
* 4 遍历目录
*
* getAbsolutePath();
* getName();
* getParent();
*/
import java.io.*;
import java.util.*;
import java.text.*;
public class IO_15_File_01{
public static void main(String[] args) throws Exception{
//1 获取文件的绝对路径,构造函数并不是创建新文件用的,文件是在硬盘中的,但是这里只是把文件对象复制到内存而已,然后返回找到这个文件的路径
//2 构造方法只不过是为已经存在的文件,创建File对象
File f1 = new File("D:/Users/Admin/Desktop/IO/File_test.java");
System.out.println( f1.getAbsolutePath() );//获取全名
//D:\Users\Admin\Desktop\IO\File_test.java //2 获取文件名
System.out.println( f1.getName() ); //真实文件名,包括扩展名
//File_test.java //3 获取父路径
File f2 = new File("D:\\Users\\Admin\\Desktop\\IO\\fos_tmp_01.txt");
File f3 = new File("D:/test.txt");
//Linux
//windows \ 右斜线正斜线 /反斜线,左斜线
System.out.println( f2.getParent() );
System.out.println( f3.getParent() );
//D:\Users\Admin\Desktop\IO //4 判断是文件还是目录:目录也是文件,页面保存的是文件对象的内存地址
System.out.println( f3.isFile() );
System.out.println( f3.isDirectory() ); //5 获取最后一次修改时间
Date t = new Date(f2.lastModified());
System.out.println( new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(t) ); //创建新文件
File f4 = new File("D:/IO");
System.out.println( f4.createNewFile() ); //6 获取文件长度
System.out.println( f4.length() ); //7 列出子文件
File f5 = new File("D:\\Users\\Admin\\Desktop\\js_jq\\");
File[] fs =f5.listFiles();
for (File f:fs){
System.out.println( f.getAbsolutePath() );
if (f.getAbsolutePath().endsWith(".java")) {
System.out.println( f.getAbsolutePath() );
}
}
}
}
上面的基本上将流中的方法写了差不多了,仅供参考!
IO流详解之代码详解的更多相关文章
- RAID5 IO处理之写请求代码详解
我们知道RAID5一个条带上的数据是由N个数据块和1个校验块组成,其校验块由N个数据块通过异或运算得出,这样才能在任意一个成员磁盘失效时通过其他N个成员磁盘恢复出用户写入的数据.这也就要求RAID5条 ...
- RAID5 IO处理之条带读代码详解
除了对齐读流程中读失败通过条带重试的场景会进入到条带读,当IO覆盖范围超过一个chunk时也会进入条带读(如向chunk为4K的RAID下发起始位置为1K大小为4K的IO),接下来我们就这部分逻辑进行 ...
- RAID5 IO处理之对齐读代码详解
1 总体流程 当一个读请求的覆盖范围落在一个chunk范围内时为对齐读,流程图如下所示: 2 入口 在RAID5的IO处理函数 make_request() 一开始进行了对齐读的判断和处理,代码如下所 ...
- IO流的标准处理代码
FileInputStream fis = null; FileOutputStream fos = null; try { fis = new FileInputStream("aaa.t ...
- Java第三阶段学习(二、IO流--------递归,字节流Stream)
一.递归 定义:指方法在方法内调用自己 适用于方法的运算主体不变,但运行的时候,参与运算的方法参数会变化注意:一定要给递归一个出口,否则内存溢出 练习题1:使用递归打印文件夹中所有的文件,包含子目录中 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_06 Properties集合_1_使用Properties集合存储数据,遍历取出集合中的数据
map下面的实现类叫做Hashtable Properties是唯一和IO流相结合的 讲解 代码
- IO流详解及测试代码
IO流 (1)IO用于在设备间进行数据传输的操作 (2)分类: A:流向 输入流 读取数据 输出流 写出数据 B:数据类型 字节流 字节输入流 ...
- 基于JavaSE阶段的IO流详解
1.IO流基本概述 在Java语言中定义了许多针对不同的传输方式,最基本的就是输入输出流(俗称IO流),IO流是属于java.io包下的内容,在JavaSE阶段主要学下图所示的: 其中从图中可知,所有 ...
- IO流详解
目录 IO流 IO流概述及其分类 IO概念 流按流向分为两种: 流按操作类型分为两种: 常用的IO流类 字节流的抽象父类: 字符流的抽象父类: InputStream & FileInputS ...
随机推荐
- SQL2008-字符转数字CAST和CONVERT
语法 使用CAST: CAST(expression AS data_type) 使用CONVERT: CONVERT(data_type[(length)],expression,[style])例 ...
- [iOS基础控件 - 6.6] 展示团购数据 自定义TableViewCell
A.需求 1.头部广告 2.自定义cell:含有图片.名称.购买数量.价格 3.使用xib设计自定义cell,自定义cell继承自UITableViewCell 4.尾部“加载更多按钮”,以及其被点击 ...
- 详解UML中的聚合,关联,泛化等关系
1. Overview UML设计类中,类的关系分为Generalization(泛化),Dependency(依赖关系).Association(关联关系).Aggregation(聚合关系).Co ...
- TableControl大小变化
TableControl跟随Form大小变化: 选中TableControl,而不是TablePage,右侧Layout: 可以对其设置居上.居下等位置
- Codeforces Beta Round #96 (Div. 1) D. Constants in the language of Shakespeare 贪心
D. Constants in the language of Shakespeare Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codef ...
- 7Zip 来备份重要文件(夹)
body { font-family: 宋体,Georgia,Helvetica,Arial,sans-serif,宋体,serif; font-size: 10.5pt; line-height: ...
- win8如何删除未知账户(s-1-5-21-2000478354-1390067357-725345543-1003)
今天突然发现从别处复制来的游戏压缩文件不能解压,并且以前把游戏文件都是放在该目录下的,以前局域网玩起游戏来老是不能作为主机,且不能下载局域网玩的RPG地图,以前就注意过这个未知账户(s-1-5-21- ...
- jquery 源码分析学习地址
http://www.ccvita.com/121.htmljQuery工作原理解析以及源代码示例http://www.cnblogs.com/haogj/archive/2010/04/19/171 ...
- [Effective C++ --017]以独立语句将newed对象置入智能指针
这一节也比较简单,先假设我们有如下的函数: int foo(); void memFoo(shared_ptr<T> pw, int foo); 现在假设我们要调用memFoo函数: me ...
- 再探ASP.NET 5(转载)
就在最近一段时间,微软又有大动作了,在IDE方面除了给我们发布了Viausl Studio 2013 社区版还发布了全新的Visual Studio 2015 Preview. Visual Stud ...