1.OutputStream写入文件内容
import java.io.*;
public class OutPutStreamDemo01 {
public static void main(String[] args) throws Exception {
//第1步:使用File类找到一个文件
File f = new File(File.separator + "Users/QiuFeihu/Work/test/hello.txt");
f.createNewFile();
//第2步:通过子类实例化父类对象
OutputStream out = null; //准备好一个输出的对象
out = new FileOutputStream(f); //通过对象多态性,进行实例化
//第3步:进行写操作
String str = "Hello World!!!"; //准备一个字符串
byte b[] = str.getBytes(); //只能输出byte数组,所以将字符串变为byte数组
out.write(b);
//第4步:关闭输出流
out.close();
}
}
2.InputStream读取文件内容
import java.io.*;
public class InputStreamDemo01 {
public static void main(String[] args) throws Exception {
//第1步:使用File类找到一个文件
File f = new File(File.separator+"Users/QiuFeihu/Work/test/hello.txt");
//第2步:通过子类实例化父类对象
InputStream input = null;
input = new FileInputStream(f);
//第3步:进行读操作
byte b[] = new byte[1024];
input.read(b);
//第4步:关闭输入流
input.close();
System.out.println("内容为:" + new String(b));
}
}
运行结果:
内容为:Hello World!!!
3.OutputStream追加文件内容:
import java.io.*;
public class OutputStreamDemo03 {
public static void main(String[] args) throws Exception {
//第1步:使用File类找到一个文件
File f = new File(File.separator+"Users/QiuFeihu/Work/test/hello.txt");
//第2步:通过子类实例化父类对象
OutputStream out = null;
out = new FileOutputStream(f,true);
//第3步:进行写操作
String str = "\r\n世界你好!";
byte b[] = str.getBytes();
for(int i = 0; i < b.length; i++){
out.write(b[i]);
}
//第4步:关闭输出流
out.close();
}
}
4.InputStream循环读取文件内容:
import java.io.*;
public class InputStreamDemo05 {
public static void main(String[] args) throws Exception {
//第1步:使用File类找到一个文件
File f = new File(File.separator+"Users/QiuFeihu/Work/test/hello.txt");
//第2步:通过子类实例化父类对象
InputStream input = null;
input = new FileInputStream(f);
//第3步:进行读操作
int len = 0;
byte b[] = new byte[1024];
int temp = 0;
while((temp = input.read()) != -1) {
//将每次的读取内容给temp变量,如果temp的值不是-1,则表示文件没有读完
b[len] = (byte)temp;
len++;
}
//第4步:关闭输入流
input.close();
System.out.println("内容为:" + new String(b,0,len));
}
}
运行结果:
内容为:Hello World!!!
世界你好!