java拼接文件_java实现两个文件的拼接

用Java语言实现两个文件的拼接与上一篇用Java实现两个文件的异或使用的方法都一样,都是FileInputStream()与FileOutputStream()方法,两个相同大小的文件a,b,把文件b拼接在文件a之后,输出的文件名为outfile具体代码详见下述内容:

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

public class Append

{

static int count=0;

static int countb=0;

public static void main(String args[]) throws IOException

{

FileInputStream filea = new FileInputStream("d:\\JavaXor\\a");

FileInputStream fileb = new FileInputStream("d:\\JavaXor\\b");

File outfile=new File("d:\\JavaXor\\outfile");

int filesizea=filea.available();//计算文件的大小

int filesizeb=fileb.available();

FileOutputStream fos=new FileOutputStream(outfile);

int hasReada = 0;

int hasReadb=0;

byte[] bufa=new byte[1024];

byte[] bufc=new byte[1024];

byte[] buf_yua=new byte[filesizea%1024];

byte[] buf_yub=new byte[filesizeb%1024];

while( (hasReada=filea.read(bufa) )>0 )

{

if(count

{

for(int i=0;i

{

bufc[i]=(byte)(bufa[i] & 0xFF);

count++;

}

fos.write(bufc);

}

else if(count>=filesizea-filesizea%1024 && count

{

for(int j=0; count>=filesizea-filesizea%1024 && count

{

buf_yua[j]=(byte)(bufa[j] & 0xFF);

count++;

}

fos.write(buf_yua);

}

}

while( (hasReadb=fileb.read(bufa) )>0 )

{

if(countb

{

for(int i=0;i

{

bufc[i]=(byte)(bufa[i] & 0xFF);

countb++;

}

fos.write(bufc);

}

else if(countb>=filesizeb-filesizeb%1024 && countb

{

for(int j=0; countb>=filesizeb-filesizeb%1024 && countb

{

buf_yub[j]=(byte)(bufa[j] & 0xFF);

countb++;

}

fos.write(buf_yub);

}

}

}

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值