java中Inputstream,outputstream(字节输入输出流)
- Inputstream(字节输入流)
- outputstream(字节输出流)
字节流
inputstream是字节输入流所有类的父类、超类、基类。一般都用fileinputstream
例如:字节输入流
package TestProgramPackge02;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;
import org.apache.commons.io.FileUtils;
import com.sun.xml.internal.fastinfoset.tools.FI_DOM_Or_XML_DOM_SAX_SAXEvent;
public class TestTwoDemo01 {
public static void main(String[] args) {
String filename="test.txt";
File file =new File(filename);
byte inputbyte[]=new byte[1024];
int len;
try {
FileInputStream fis=new FileInputStream(file);
/*用fis关联文件,之后可以用read方法读取内容,
*read方法返回的是是一个int,代表读取到的数据大小
*/
while((len=fis.read(inputbyte))>0){
System.out.println(new String(inputbyte,0,len));
/*采用new String(inputbyte,0,len))构造方法把字节数组转
*换为字符串
*/
}
fis.close();
//用完要把流关闭
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
outputstream是字节输出流所有类的父类、超类、基类。一般都用fileoutputstream
例子:字节输出流
package TestProgramPackge02;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;
import org.apache.commons.io.FileUtils;
import com.sun.xml.internal.fastinfoset.tools.FI_DOM_Or_XML_DOM_SAX_SAXEvent;
public class TestTwoDemo01 {
public static void main(String[] args) {
String filename="test.txt";
File file =new File(filename);
Scanner wr=new Scanner(System.in);
//定义输入对象
String outputstring;
byte outputbyte[]=new byte[1024];
try {
FileOutputStream fos=new FileOutputStream(file);
/*为输出流实例fos指定文件时,代码中的构造方法是覆盖文件内容,
*所以会将原有内容清空。
*new FileOutputStream(file,boolean append);
*append值为true时,代表插入数据,则不会清空原本内容。
*/
System.out.println("Please write sth...");
outputstring=wr.nextLine();
//控制台输入一个字符串
outputbyte=outputstring.getBytes();
//字符串转换为字节数组
if(outputstring!="")fos.write(outputbyte);
//有输入的情况下把内容写入文件
fos.close();
//关闭字节输出流
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}