I/O流基础知识
1.文件:1.流式文件(有方向)2.记录式文件(无方向)
2.文件的存取方法:1.顺序存取2.随机存取
3.文件的使用:1.操作接口2.应用程序接口
4.流的定义:有方向的进行流动,文件里面的数据进行操作,传输数据
5.流一般采取缓冲区技术
6.流的作用:传输数据
7.流类: 字符流,字节流…
8.文件类:File文件类,RandomAccessFile随机存取文件类
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintStream;
import org.junit.Test;
public class Systeminout {
@Test//展示System.in的用法
public void demo1() {
InputStream in=System.in;
try {
for(int i=0;i<10;i++){
int b=in.read();//阻塞方法,等着输数据
System.out.println((char)b);
}
} catch (IOException e) {
e.printStackTrace();
}
//int a=10/0;
}
@Test//展示System.out的用法
public void demo2(){
PrintStream out=System.out;
for(int i=0;i<10;i++){
out.println("Hello,World!");
}
}
}
文件字符流
FileInputStream
FileOutputStream
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.junit.Test;
public class FileInOutputStreamDemo {
@Test
public void inDemo() {
try {
FileInputStream fin=new FileInputStream("d:/a.txt");
while(fin.available()>0){
int b=fin.read();
System.out.print((char)b);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
@Test
public void inDemo2() throws IOException {
byte[] buf=new byte[512];//缓冲区
FileInputStream fin=new FileInputStream("d:/a.txt");
int len=0;
while((len=fin.read(buf))!=-1){
for(int i=0;i<len;i++){
System.out.print((char)buf[i]);
}
}
}
}