每日日报

今日练习

package File;
import java.io.*;

public class IOUtils {
public static void print(byte[] ary){
for(int b:ary){
b &= 0xff; //b=b&0xff
if(b<=0xf) System.out.print("0");
System.out.print(Integer.toHexString(b)+" ");
}
System.out.println();
}
public static byte[] read(String file){
try{
InputStream in=new FileInputStream(file);
byte[] buf=new byte[in.available()];
in.read(buf);
in.close();
return buf;
}catch (IOException e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
public static Object deepCopy(Object obj){
try{
ByteArrayOutputStream buf=new ByteArrayOutputStream();
ObjectOutputStream oos=new ObjectOutputStream(buf);
oos.writeObject(obj);
oos.close();
byte[] ary=buf.toByteArray();
ObjectInputStream ois=new ObjectInputStream(new ByteArrayInputStream(ary));
Object o=ois.readObject();
ois.close();
return o;
}catch(Exception e){
throw new RuntimeException(e);
}
}
public static void cp(File from,File to){
try{
InputStream in=new FileInputStream(from);
OutputStream out=new FileOutputStream(to);
byte[] buf=new byte[1024];
int n;
while((n=in.read(buf))!=-1){
out.write(buf,0,n);
}
in.close();
out.close();
}catch (IOException e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
public static void cp1(File from,File to){
try{
InputStream in=new FileInputStream(from);
OutputStream out=new FileOutputStream(to);
int b;
while((b=in.read())!=-1){
out.write(b);
}
in.close();
out.close();
}catch(IOException e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
public static void cp(String from,String to){
cp(new File(from),new File(to));
}
public static void print(File file){
try{
InputStream in=new FileInputStream(file);
int b;
int i=1;
while((b=in.read())!=-1){
if(b<=0xf) System.out.print("0");
System.out.print(Integer.toHexString(b)+" ");
if(i++%16==0) System.out.println();
}
System.out.println();
in.close();
}catch (IOException e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
public static void print(String file){
print(new File(file));
}
public static void split(String file,int size){
try{
if(size<=0){
throw new IllegalArgumentException("搞啥呀!");
}
int idx=0;
InputStream in=new BufferedInputStream(new FileInputStream(file));
OutputStream out=new BufferedOutputStream(new FileOutputStream(file+"."+idx++));
int b;
int count=0;
while((b=in.read())!=-1){
out.write(b);
count++;
if(count%(size*1024)==0){
out.close();
out=new BufferedOutputStream(new FileOutputStream(file+"."+idx++));
}
}
in.close();
out.close();
}catch(IOException e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
public static void join(String file){
try{
String filename=file.substring(0,file.lastIndexOf("."));
String num=file.substring(file.lastIndexOf(".")+1);
int idx=Integer.parseInt(num);
OutputStream out=new FileOutputStream(filename);
File f=new File(filename+"."+idx++);
while(f.exists()){
InputStream in=new FileInputStream(f);
in.close();
f=new File(filename+"."+idx++);
}
out.close();
}catch(IOException e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
public static void cp(InputStream in,OutputStream out)throws IOException{
byte[] buf=new byte[1024*512];
int count;
while((count=in.read(buf))!=-1){
System.out.println(count);
out.write(buf,0,count);
}
out.flush();
}
}

posted @ 2020-11-15 21:04  禁小呆  阅读(47)  评论(0)    收藏  举报