io流(1)
io(1)代码和注释
创建文件
File file = new File("E:\\IoTest\\dir\\dirtest");
//创建目录,mkdir如果没有上级目录则创建失败,mkdirs没有上级目录一并创建
Boolean flag = file.mkdirs();
System.out.println(flag);
返回下级名称,只返回一级
列出下级file对象
列出所有盘符
File file = new File("E:\\IoTest");
//返回下级名称,只返回一级
String[] subNames = file.list();
for(String s:subNames){
System.out.println(s);
}
//列出下级file对象
File[] subFiles = file.listFiles();
for(File f:subFiles){
System.out.println(f);
}
//列出所有盘符
File[] root = file.listRoots();
for(File r:root){
System.out.println(r);
}
}
返回文件名称
返回文件绝对路径
返回文件父路径
File file = new File("E:\\IoTest\\323578.jpg");
//返回文件名称
System.out.println("名称:"+file.getName());
//开始写的是相对路径此时就是相对路径,是绝对路径这里就是绝对路径
System.out.println("路径:"+file.getPath());
//返回文件的绝对路径
System.out.println("绝对路径:"+file.getAbsolutePath());
//获取文件的父路径,如果上路径不存在返回null
System.out.println("父路径:"+file.getParent());
//获取父对象的名称
System.out.println("父对象:"+file.getParentFile().getName());
判断文件是否存在
判断是否为文件还是文件夹
File file = new File("E:\\IoTest");
//判断文件是否存在
System.out.println("是否存在"+file.exists());
//判断是否是文件
System.out.println("是否文件"+file.isFile());
//判断是否是文件夹
System.out.println("是否文件夹"+file.isDirectory());
创建新文件
删除文件
File file = new File("E:\\IoTest\\ioTest.txt");
//创建新的文件,返回为布尔类型,且创造条件为不存在
Boolean ff = file.createNewFile();
System.out.println(ff);
ff = file.delete();
//删除文件
System.out.println(ff);
构建file对象
输出java的路径分隔符
String path = "E:/IoTest/323578.jpg";
File file = new File("E:\\IoTest\\","323578.jpg");
//java的路径分隔符
System.out.println(File.separator);
//构建file对象
System.out.println(file.length());
System.out.println(path.length());
函数输出文件及文件夹个数
package com.io;
import java.io.File;
import java.util.concurrent.CountDownLatch;
public class Dir03 {
public static int d;
public static int f;
public static void main(String[] args) {
File file = new File("E:\\IoTest");
count(file);
System.out.println(d);
System.out.println(f);
}
public static void count(File file){
if(file.isFile()){
d++;
}else{
f++;
for(File file1 : file.listFiles())
count(file1);
}
}
}
编码和解码
String msg = "春风不度玉门关";
//编码字节数组
byte[] datas = msg.getBytes();//使用默认的工程字符集
System.out.println(datas);
//解码:字符串 String
msg = new String(datas,0,datas.length,"utf-8");
System.out.println(msg);