package com.xx.InputAndOutputStream;
import java.io.*;
public class OutputStreamTesting {
public static void main(String[] args) throws IOException {
String dir="C:\\Users\\杨茜玲\\Desktop";
String name="aa.txt";
//创建目标文件,在桌面中不存在
String target="bb.txt";
//生成一个dir文件下的名为name的文件
File file=new File(dir,name);
//将该文件传给输入流
InputStream inputStream=new FileInputStream(file);
//会自动查找桌面是否有相应的文件夹,如果没有会自行创建一个(其实下面的语句已将自行创建一个文件夹),他不会创建多级目录下的文件
// append是是否对文件进行追加,而不是进行覆盖
OutputStream outputStream=new FileOutputStream(dir+File.separator+target,true);
//testOut(inputStream,outputStream);
testOutArr(inputStream,outputStream);
}
public static void testOutArr(InputStream inputStream,OutputStream outputStream) throws IOException{
byte[] buf=new byte[1024];
int length;
while ((length=inputStream.read(buf))!=-1){
//从buf中读取,从第0个字节读到第length个字节
outputStream.write(buf,0,length);
}
inputStream.close();
outputStream.close();
}
//单个字节读取,中文会有问题
//将输入流的文件读取到输出流中
public static void testOut(InputStream inputStream,OutputStream outputStream) throws IOException{
int value=0;
while (value!=-1){
//read()返回下一个数据的下一个字节,如果没有字节可读则返回-0
value=inputStream.read();
//将输入流的内容写到输出流中
outputStream.write(value);
}
//关闭流
inputStream.close();
outputStream.close();
}
}
java基础之OutputStream的使用
最新推荐文章于 2025-05-13 18:55:39 发布