java-IO流(1)
一、java I/O

Java.io 包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。
Java.io 包中的流支持很多种格式,比如:基本类型、对象、本地化字符集等等。
一个流可以理解为一个数据的序列。输入流表示从一个源读取数据,输出流表示向一个目标写数据。
Java 为 I/O 提供了强大的而灵活的支持,使其更广泛地应用到文件传输和网络编程中。
二、File类


相关代码演示
import java.io.File;
import java.io.IOException;
public class TestFile {
public static void main(String[] args) {
File f = new File("a.text");//主要用路径字符串作为参数
System.out.println(f.isDirectory());
System.out.println(f.isFile());
System.out.println(f.length());
File f2=new File("test/hello");
System.out.println(f2.isDirectory());
System.out.println(f2.length());
System.out.println(f.getName());
System.out.println(f2.getName());
// File file = new File("b.text");
// System.out.println(file.isFile());
// System.out.println(file.isDirectory());
//创建文件
// try {
// file.createNewFile();//创建文件
// } catch (IOException e) {
// e.printStackTrace();
// }
// System.out.println(file.isFile());
//创建文件夹
File file2= new File("text/hello/c.txt");
//获取上一级File对象,递归创建文件夹,在本级创建文件
File p = file2.getParentFile();//获取上一级File对象
p.mkdirs();
try {
file2.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
// File f3=new File("hhh/aaa/d.txt");
// f3.mkdirs();//递归创建文件夹,连最后一级文件也会创建成文件夹
f.delete();//删除文件
File f4=new File("e.txt");
file2.renameTo(f4);
System.out.println(file2.getPath());
System.out.println(f4.getAbsoluteFile());
File file=new File("io/hello/test.text");
file.getParentFile().mkdirs();
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(file.getName());
System.out.println(file.getPath());
System.out.println(file.getAbsoluteFile());
System.out.println(file.length());
}
}
三、流

java流的分类

字节输入流代码
package cn.kgc.kb11;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Arrays;
public class TestInputStream {
public static void main(String[] args) throws Exception {
FileInputStream fis = null;
//第二种使用File对象来创建流
// File f = new File("e.txt");
// try {
// //使用路径把文件放入输入流中
fis = new FileInputStream("e.txt");
// fis=new FileInputStream(f);//使用文件对象来做参数的构造方法
int tmp = 0;
// char[] c= new char[fis.available()];
while ((tmp = fis.read())> 0) {//如果read的值大于0,则认为读到数据了
System.out.print((char) tmp);
// c[i]=(char)tmp;
// i++
}
// } catch (FileNotFoundException e) {
// e.printStackTrace();
// } finally {
// try {
fis.close();
// System.out.println(Arrays.toString(c));
// } catch (IOException e) {
// e.printStackTrace();
// }
}
}
字节输出流代码示范:
package cn.kgc.kb11;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class TestOutPutStream {
public static void main(String[] args) throws IOException{
FileOutputStream fos=null;
String s="\nkb11你们都很帅,唯有常帅常常帅!";
{
// try {
// fos = new FileOutputStream("b.txt");//替换写入
fos= new FileOutputStream("b.txt",true);
byte[] b = s.getBytes();
fos.write(b);
// } catch (FileNotFoundException e) {
// e.printStackTrace();
// } catch (IOException e) {
// e.printStackTrace();
// }finally{
// try {
fos.close();
// } catch (IOException e) {
// e.printStackTrace();
// }
}
}
}
16万+





