FileWriter本身就是一个缓冲流,需要flush()
这里有一个需要强调的,第二行访问文件的这四个流都属于节点流,节点流是最基本的流,其他为处理流
java.io.File
File类的实例抽象为一个文件或文件夹。对File类对象的操作就相当于是对指定文件或文件夹设为操作。
File类构造器
lastModified()函数是Java中File类的一部分。该函数返回该抽象路径名最后一次修改所表示的时间。
循环创建文件夹
import java.io.File;
import java.util.Scanner;
public class mkdirFile {
public static void main(String[] args) {
// Scanner scan=new Scanner(System.in);
// String str = scan.next();
// File file =new File(str);
// if(!file.exists()){
// file.mkdir();
// }
// File file=new File("C:");
// System.out.println(file.getParent());//null
File file=new File("C:\\java\\java1\\java2");
String parent = file.getParent();
System.out.println(parent);//C:\java\java1
makTest(file);
}
private static void makTest(File file){
Boolean aBoolean = isexitParent(file);
if(aBoolean!=true) {
isexitParent(file);
}
}
private static Boolean isexitParent(File file){
if(file.exists()){
return true;
}else{
File parentFile = file.getParentFile();
if((file.getParent()!=null)&&parentFile.exists()){
// isexitParent(parentFile);
file.mkdir();
}else if(!parentFile.exists()){
parentFile.mkdir();
file.mkdir();
}
isexitParent(parentFile);
}
return false;
}
}
递归二分查找
//递归法二分查找
public class TwoSeacher {
public static void main(String[] args) {
int[] nums={1,2,4,5,6,8,9,12,23,45,67,68,79,80,90,200};
int search = search(nums, 67, 0, nums.length);
System.out.println(search);
}
public static int search(int []a,int target,int start,int end) {
if (start > end) {
return -1;
}
int mid = (end +start) / 2;
int midVal = a[mid];
if (target < midVal) {
return search(a, target, start, mid - 1);
} else if (target > midVal) {
return search(a, target, mid + 1, end);
} else {
return mid;
}
}
}
```## 标题
## 找出指定目录下所有.txt文件

## 创建临时文件
**createTempFile()中第一个是给临时文件的前缀名,第二个是文件后缀名,第三个是保存路径**


## Properties向文件中写数据,读数据


## 对象序列化流


## ByteArrayInputStream和ByteArrayOutputStream
**写对象都对象属于序列化,所有切记要给对象的所属类加上Serializable接口**


## DataInputStream和DataOutputStream
读写基本数据类型数据的一个**处理流**
读写基本类型数据的处理流,可以将基本类型数据的二进制直接进行读写。
