文件---字符数组---文件
package Iotext;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
/**
* 1.文件 --程序----》字节数组
* 1)。文件输入流
* 字节数组输出流
*
*2.字节数组 --程序--》文件
* 1)字节数组输入流
* 文件输出流
*
* @author Administrator
*
*/
public class ByteArrayDemo02{
public static void main(String[] args) throws IOException{
byte[] data=getBytesFromFile("E:/xp1/test.1.jpg");
toFileFromByteArray(data,"E:/xp1/test/arr.jpg");
}
//字节数组 ---程序-》文件
public static void toFileFromByteArray(byte[] src,String destPath) throws IOException{
//创建源
//目的地
File dest=new File(destPath);
//选择流
//字节数组输入流
InputStream is = new BufferedInputStream(new ByteArrayInputStream(src));
//文件输出流
OutputStream os=new BufferedOutputStream(new FileOutputStream(dest));
byte[] flush=new byte[1];
int len =0;
while(-1 !=(len =is.read(flush))){
os.write(flush,0,len);
}
os.flush();
//释放资源
os.close();
is.close();
}
/**
* 1.文件--程序--》字节数组
* @param srcPath
* @return
* @throws IOException
*/
public static byte[] getBytesFromFile(String srcPath) throws IOException{
//创建文件源
File src=new File(srcPath);
//创建字节数组目的地
byte[] dest=null;
//选择流
//文件输入流
InputStream is =new BufferedInputStream( new FileInputStream(src));
//字节数组输出流,不能使用多态
ByteArrayOutputStream bos=new ByteArrayOutputStream();
byte[] flush=new byte[1024];
int len =0;
while(-1!=(len=is.read(flush))){
bos.write(flush,0,len);
}
bos.flush();
//获取数组
dest=bos.toByteArray();
bos.close();
is.close();
return dest;
}
}
package Iotext;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
/**
* 1.文件 --程序----》字节数组
* 1)。文件输入流
* 字节数组输出流
*
*2.字节数组 --程序--》文件
* 1)字节数组输入流
* 文件输出流
*
* @author Administrator
*
*/
public class ByteArrayDemo02{
public static void main(String[] args) throws IOException{
byte[] data=getBytesFromFile("E:/xp1/test.1.jpg");
toFileFromByteArray(data,"E:/xp1/test/arr.jpg");
}
//字节数组 ---程序-》文件
public static void toFileFromByteArray(byte[] src,String destPath) throws IOException{
//创建源
//目的地
File dest=new File(destPath);
//选择流
//字节数组输入流
InputStream is = new BufferedInputStream(new ByteArrayInputStream(src));
//文件输出流
OutputStream os=new BufferedOutputStream(new FileOutputStream(dest));
byte[] flush=new byte[1];
int len =0;
while(-1 !=(len =is.read(flush))){
os.write(flush,0,len);
}
os.flush();
//释放资源
os.close();
is.close();
}
/**
* 1.文件--程序--》字节数组
* @param srcPath
* @return
* @throws IOException
*/
public static byte[] getBytesFromFile(String srcPath) throws IOException{
//创建文件源
File src=new File(srcPath);
//创建字节数组目的地
byte[] dest=null;
//选择流
//文件输入流
InputStream is =new BufferedInputStream( new FileInputStream(src));
//字节数组输出流,不能使用多态
ByteArrayOutputStream bos=new ByteArrayOutputStream();
byte[] flush=new byte[1024];
int len =0;
while(-1!=(len=is.read(flush))){
bos.write(flush,0,len);
}
bos.flush();
//获取数组
dest=bos.toByteArray();
bos.close();
is.close();
return dest;
}
}