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 ...
随机推荐
- hdoj 3371 Connect the Cities
Connect the Cities Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- 转载Sql 获取数据库所有表及其字段名称,类型,长度
转载原地址 http://www.cnblogs.com/Fooo/archive/2009/08/27/1554769.html SELECT (case when a.colorder=1 the ...
- AVR ATMEGA8 串口USART
avr串口配置很简单,配置就几个寄存器就可以进收发: 但有几点要搞明白的是: 1.串口一但被配置成功IO功能自动被占用,这点与LPC或STM8/32不同(需要寄存配置): 2.没有专门的串口开起或闭关 ...
- React-native 中的触摸响应功能
我们在做APP的时候,与桌面应用系统不同的是触摸响应. web页面对触摸响应的支持和原生的APP有着很大的差异. 基本用法 componentWillMount: function() { this. ...
- Linux基本操作 9----- 认识与学习bash
一 认识bash这个shell 1 管理整个计算机硬件的其实就是操作系统的内核,这个内核是需要被保护的,所以我们一般用户就只能通过shell来跟内核通信,以让内核达到我们所想打到的工作. 2 只要能够 ...
- SQLite使用教程4 附加数据库
http://www.runoob.com/sqlite/sqlite-attach-database.html SQLite 附加数据库 假设这样一种情况,当在同一时间有多个数据库可用,您想使用其中 ...
- Triangles
1010: Triangles Time Limit: 2 Sec Memory Limit: 128 MB Submit: 18 Solved: 8 Description You are ...
- 关于STM32下载问题的简单理解
首先STM32分为两种下载方式1.ISP(IN-SYSTEM-PROGRAMMING在线编程) 2.JTAG 这里简单谈谈对ISP下载的理解: ISP下载是51单片机,STM等单片机比较常见的一种下 ...
- ME21N/ME22N/ME23N屏幕增强BADI ME_GUI_PO_CUST
最近想更深入学习下classic BADI, 以前没玩过BADI屏幕增强, 所以决定玩一下. 这次的屏幕增强主要用到两个BADI: ME_GUI_PO_CUST和ME_PROCESS_PO_CUST ...
- android119 侧滑菜单
MainActivity.java package com.heima52.slidemenu; import com.heima52.slidemenu.view.SlideMenu; import ...