1.目录、文件

package com.yfs.javase;

import java.io.File;

public class FileDemo1 {

	/**
* File 目录 文件
*/
public static void main(String[] args) throws Exception {
// 创建目录对象 没有对应目录
File file = new File("C:/abc");
//File file = new File("C:/aaa/bbb/ccc");
System.out.println("file是否存在 : " + file.exists());
// 创建目录
if (!file.exists()) {
//file.mkdir();//创建单级目录
file.mkdirs();
System.out.println("目录创建完成...");
} // System.out.println(File.pathSeparator);
// System.out.println(File.pathSeparatorChar);
// System.out.println(File.separator);
// System.out.println(File.separatorChar);
//文件
File f = new File(file,"Hello.txt");
System.out.println("f是否存在: " + f.exists());
if(! f.exists()) {
f.createNewFile();//创建文件
}
System.out.println("f.canExecute() : " + f.canExecute());
System.out.println("f.canRead() : " + f.canRead());
System.out.println("f.canWrite(): " + f.canWrite());
System.out.println("f.isDirectory(): " + f.isDirectory());
System.out.println("f.isFile(): " + f.isFile());
System.out.println("f.lastModified(): " + String.format("%tF %<tT", f.lastModified()));
//删除文件
System.out.println("删除文件:" + f.delete());
file.delete();//删除目录 目录必须为空 System.out.println("执行结束...");
} }

2.相对 绝对

package com.yfs.javase;

import java.io.File;

public class FileDemo2 {

	/**
* File 相对 绝对
*/
public static void main(String[] args) throws Exception { File file = new File("img/index.gif");//相对路径 工程路径
System.out.println("file的路径: " + file.getPath());
System.out.println("file的父路径: " + file.getParent());
System.out.println("file的绝对路径: " + file.getAbsolutePath());
System.out.println("file的绝对文件: " + file.isAbsolute());
file = file.getAbsoluteFile();
System.out.println("file的绝对文件: " + file.isAbsolute()); //查看目录下的文件名称
File f = new File("E:\\clazz1\\workspace\\20140708");
//System.out.println(f.getAbsolutePath());
String[] files = f.list();
for (int i = 0; i < files.length; i++) {
System.out.println(files[i]);
} //文件对象
File[] fs = f.listFiles();
for (int i = 0; i < fs.length; i++) {
System.out.println(fs[i].getAbsolutePath());
} } }

3.显示所有文件

package com.yfs.javase;

import java.io.File;

public class FileDemo3 {

	/**
* File 相对 绝对
*/
public static void main(String[] args) throws Exception {
File f = new File("E:\\clazz1\\workspace\\20140708");
showAllFile(f); }
//递归算法 方法调用自己
public static void showAllFile(File file) {
//文件
if(file.isFile()) {
System.out.println(file.getPath());
return;
}
//目录
File[] files = file.listFiles();
for (int i = 0; i < files.length; i++) {
//递归
showAllFile(files[i]);//是目录 再调用自己方法
} } }

4.字节流

package com.yfs.javase;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.InputStream;
import java.io.Reader; public class IODemo1 { /**
* 输入 字符 字节
*/
public static void main(String[] args) throws Exception {
// inputData();
// inputChar();
readChar(); } // 字符流
public static void readChar() throws Exception { File file = new File("in2.txt");// 源头
// 输入流 源头与程序之间 建立连接
Reader in = new FileReader(file); int data = in.read();//按字符处理
System.out.println((char) data); data = in.read();
System.out.println((char) data); data = in.read();
System.out.println((char) data); data = in.read();
System.out.println((char) data); // 关闭连接
in.close(); } public static void inputChar() throws Exception {
// in1.txt 当前程序
File file = new File("in2.txt");// 源头
// 输入流 源头与程序之间 建立连接
InputStream in = new FileInputStream(file); int data = in.read();// 每次读一个字节
System.out.println((char) data); data = in.read();// 每次读一个字节
System.out.println((char) data); data = in.read();// 每次读一个字节
System.out.println((char) data); data = in.read();// 每次读一个字节
System.out.println((char) data); // 关闭连接
in.close(); }
//字节流
public static void inputData() throws Exception {
// in1.txt 当前程序
File file = new File("in1.txt");// 源头
// 输入流 源头与程序之间 建立连接
InputStream in = new FileInputStream(file); int data = in.read();// 每次读一个字节
System.out.println((char) data); data = in.read();// 每次读一个字节
System.out.println((char) data); data = in.read();// 每次读一个字节
System.out.println((char) data); data = in.read();// 每次读一个字节
System.out.println((char) data); // 关闭连接
in.close(); } }

java新手笔记28 文件的更多相关文章

  1. java新手笔记1 Hello World!

    //Hello.java文件 //类声明 public class Hello{ //声明方法 main程序入口 public static void main (String[] args) { S ...

  2. java新手笔记29 读取文件

    1.读取文件 package com.yfs.javase; import java.io.FileInputStream; import java.io.FileReader; import jav ...

  3. JAVA新手笔记 Intent对象和Bundle对象

    Intent对象和Bundle对象 功能主要是在 MainActivity中定义了2个EditText,当用户输入内容,把他传入到第二个活动, 自己新创的活动中,MyActivity中 放在MainA ...

  4. java新手笔记34 连接数据库

    1.JdbcUtil package com.yfs.javase.jdbc; import java.sql.Connection; import java.sql.DriverManager; i ...

  5. java新手笔记32 jdk5新特性

    1.for package com.yfs.javase; import java.awt.Color; import java.util.Calendar; import java.util.Has ...

  6. java新手笔记24 Math/String对象

    1.Math package com.yfs.javase; public class MathDemo { public static void main(String[] args) { int ...

  7. java新手笔记17 参数

    package com.yfs.javase; public class ParamDemo { public static void main(String[] args) { int a = 3, ...

  8. java新手笔记8 包

    1.main函数 public class MainParam { //考察main 方法的参数 args //运行时可以传入参数 参数类型 String public static void mai ...

  9. java学习笔记 (6) —— 文件上传

    1.新建upload.jsp <%@ page language="java" import="java.util.*" pageEncoding=&qu ...

随机推荐

  1. 赋值容器winform 根据NAME查找控件

    每日一贴,今天的内容关键字为赋值容器 foreach (Control c in this.panel1.Controls) { if (c is TextBox && c.Name ...

  2. 数据返回[数据库基础]——图解JOIN

    废话就不多说了,开始... 一.提要 JOIN对于接触过数据库的人,这个词都不生疏,而且很多人很清楚各种JOIN,还有很多人对这个懂得也不是很透辟,此次就说说JOIN操纵. 图片是很容易被接受和懂得, ...

  3. 恢复WinMend Folder Hidden隐藏的文件

    前几天用了个WinMend Folder Hidden,顺手隐藏了一个文件,感觉很方便的样子. 今天突然要用的时候发现这个文件不见了,于是我去Everything搜索,其实我是忘了之前已经把它隐藏了, ...

  4. 【M1】仔细区别pointers和references

    1.引用必须初始化,而且不能修改指向,这一点和const对象十分相似. 2.引用和指针用法不同,对于引用int& ri = a; rhs是个对象,引用前面加&:对于指针,int* pi ...

  5. Android 滑动效果高级篇(七)—— 华丽翻页效果

    By 何明桂(http://blog.csdn.net/hmg25) 转载请注明出处 之前看到像ipad上的ibook的模拟书籍翻页的特效感觉很炫,在android上也有像laputa和ireader ...

  6. 【linux设备模型】之platform设备驱动

    一.platform总线.设备和驱动     platform是一种虚拟总线,对应的设备称为platform_device,对应的驱动称为platform_driver. platform_devic ...

  7. C加密解密

    /********************************************************* * des.h * 用户使用des算法头文件 * **************** ...

  8. const int * pi/int * const pi的区别

    前面有一篇文章:数组名就是常量指针 参考文章:http://blog.pfan.cn/whyhappy/5164.html const int * pi .int const * pi与int *   ...

  9. 小白日记4:kali渗透测试之被动信息收集(三)--Shodan、Google

    搜索引擎 公司新闻动态 重要雇员信息 机密⽂文档 / 网络拓扑 用户名密码 目标系统软硬件技术架构一.Shodan Shodan只搜网络设备.很多设备并不应该接入互联网,却由于本地网络管理员的疏忽和懒 ...

  10. Android进阶笔记12:Manymo(在线安卓系统模拟器工具)

    Manymo: 在线安卓系统模拟器工具是一款启动速度快,且在浏览器中就能运行流畅.你可以使用它来测试你的安卓应用,他最多能支持42种屏幕尺寸和系统版本. 长久以来,Android开发者面临的困境之一就 ...