最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java實(shí)現(xiàn)兩個(gè)文件的異或運(yùn)算

 更新時(shí)間:2018年07月03日 10:11:07   作者:卡夫卡的DOVE  
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)兩個(gè)文件的異或運(yùn)算,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了java實(shí)現(xiàn)兩個(gè)文件的異或運(yùn)算的具體代碼,供大家參考,具體內(nèi)容如下

以下代碼是將兩個(gè)大小相同的文件異或之后生成一個(gè)新的文件,具體思想是用FileInputStream方法讀取文件,以字節(jié)為單位對(duì)兩個(gè)文件進(jìn)行異或運(yùn)算,然后用FileOutputStream方法輸出文件,具體代碼如下:

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class Test
{ 
  int i=0;
  static int count=0;
  public static void main(String[] args) throws IOException 
  { 
    //創(chuàng)建字節(jié)輸入流 
    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();//計(jì)算文件的大小
  FileOutputStream fos=new FileOutputStream(outfile);

    byte[] bufa = new byte[1024]; //存放filea文件的字節(jié)數(shù)組
    byte[] bufb = new byte[1024]; //存放fileb文件的字節(jié)數(shù)組
    byte[] bufc = new byte[1024]; //存放兩個(gè)文件異或后的字節(jié)數(shù)組
    byte[] buf_yu=new byte[filesizea%1024]; //存放文件異或的最后一部分,因?yàn)槲募拇笮】赡懿皇?024的整數(shù)倍,如果繼續(xù)用bufc的話輸出的文件大小會(huì)比應(yīng)有值大
                        //就是最后一個(gè)字節(jié)數(shù)組沒(méi)有放滿1024個(gè)字節(jié)

    int hasReada = 0; 
    int hasReadb = 0; 

   //FileInputStream類(lèi)的read()方法把讀取的流放在bufa中,并且返回字節(jié)的個(gè)數(shù)賦給hasReada
    //下面的函數(shù)就是將文件的最后一部分與其他部分分別對(duì)待
   while( ((hasReada=filea.read(bufa))>0) && ((hasReadb=fileb.read(bufb))>0) )
    {
    if(count<filesizea-filesizea%1024)
    {  
      for(int i=0;i<bufa.length && count<filesizea-filesizea%1024;i++)
       {

        bufc[i]=(byte)((bufa[i]^bufb[i]) & 0xFF);
        count++;

       }
      fos.write(bufc);
    }
    else if(count>=filesizea-filesizea%1024 && count<filesizea)
    {

      for(int j=0; count>=filesizea-filesizea%1024 && count<filesizea ;j++)
      {
        buf_yu[j]=(byte)((bufa[j]^bufb[j]) & 0xFF);
        count++;

      }
      fos.write(buf_yu);
    }

    }
    System.out.println(count);


    filea.close(); //關(guān)閉輸入輸出流
    fileb.close(); 
    fos.close();
  } 
} 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • IDEA 2019.1.3 激活碼大全

    IDEA 2019.1.3 激活碼大全

    本文是小編給大家收藏整理的IDEA 2019.1.3 激活碼大全,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2019-10-10
  • Java中double精度丟失問(wèn)題原因及解決辦法

    Java中double精度丟失問(wèn)題原因及解決辦法

    使用Java double進(jìn)行運(yùn)算時(shí),經(jīng)常出現(xiàn)精度丟失的問(wèn)題,總是在一個(gè)正確的結(jié)果左右偏0.0000**1,這篇文章主要給大家介紹了關(guān)于Java中double精度丟失問(wèn)題原因及解決辦法,需要的朋友可以參考下
    2024-01-01
  • Java中的LinkedHashMap源碼詳解

    Java中的LinkedHashMap源碼詳解

    這篇文章主要介紹了Java中的LinkedHashMap源碼詳解,LinkedHashMap的實(shí)現(xiàn)方式是將所有的Entry節(jié)點(diǎn)鏈入一個(gè)雙向鏈表,并且它的底層數(shù)據(jù)結(jié)構(gòu)是HashMap,因此,LinkedHashMap具有HashMap的所有特性,但在存取元素的細(xì)節(jié)實(shí)現(xiàn)上有所不同,需要的朋友可以參考下
    2023-09-09
  • Spring整合MyBatis(Maven+MySQL)圖文教程詳解

    Spring整合MyBatis(Maven+MySQL)圖文教程詳解

    這篇文章主要介紹了Spring整合MyBatis(Maven+MySQL)圖文教程詳解的相關(guān)資料,需要的朋友可以參考下
    2016-07-07
  • 關(guān)于aop切面 注解、參數(shù)如何獲取

    關(guān)于aop切面 注解、參數(shù)如何獲取

    這篇文章主要介紹了關(guān)于aop切面 注解、參數(shù)如何獲取,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
    2022-01-01
  • java MyBatis攔截器Inteceptor詳細(xì)介紹

    java MyBatis攔截器Inteceptor詳細(xì)介紹

    這篇文章主要介紹了java MyBatis攔截器Inteceptor詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • JAVA設(shè)計(jì)模式之單例模式詳解

    JAVA設(shè)計(jì)模式之單例模式詳解

    大家好,本篇文章主要講的是JAVA設(shè)計(jì)模式之單例模式詳解,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • JAVA隨機(jī)打亂數(shù)組順序的方法

    JAVA隨機(jī)打亂數(shù)組順序的方法

    這篇文章主要介紹了JAVA隨機(jī)打亂數(shù)組順序的方法,包含了隨機(jī)數(shù)的應(yīng)用及數(shù)組的排序等操作,是Java操作數(shù)組的典型應(yīng)用,需要的朋友可以參考下
    2014-11-11
  • spring-boot-thin-launcher插件分離jar包的依賴和配置方式

    spring-boot-thin-launcher插件分離jar包的依賴和配置方式

    這篇文章主要介紹了spring-boot-thin-launcher插件分離jar包的依賴和配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Java中超詳細(xì)this與super的概念和用法

    Java中超詳細(xì)this與super的概念和用法

    這篇文章主要介紹了Java中超詳細(xì)this與super的概念和用法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02

最新評(píng)論

望城县| 治县。| 昭平县| 乌恰县| 东宁县| 桑植县| 基隆市| 响水县| 浮山县| 定西市| 锡林浩特市| 望都县| 寿光市| 盐亭县| 青龙| 庐江县| 涿州市| 绍兴市| 司法| 成都市| 错那县| 两当县| 武平县| 信丰县| 石河子市| 白水县| 竹北市| 濮阳市| 大宁县| 新乐市| 临城县| 海宁市| 灌云县| 甘孜县| 新绛县| 巫溪县| 佛冈县| 普安县| 军事| 青龙| 尼玛县|