Java 將二進制打印成十六進制


一個十六進制轉儲(dump)工具
        在處理二進制文件時,我們經常希望以十六進制的格式看看其內容。現在,我們就將它作為第二個例子。下面的小工具使用了tring.format ()方法,以可讀的十六進制格式將字節數組打印出來:

import java.io.*;

pub[is class Hex {

    public static string format(byte[] data){

        StringBuilder result = new StringBuilder();

        int n = 0;

        for(byte b : data){

           if(n % 16 == 0)

              result.append(String.format("%05X: ",n));

           result.append(String.format("%02X ",b));

           n++;

           if(n % 16 == 0) result.append("\n");

         }

         result.append("\n"));

         result.append.toString();

    }

    public static void main(String[] args) throws Exception{

         if(args.length == 0)

             System.out.prinln(format(BinaryFile.read("Hex.class")));

         else

              System.out.prinln(format(BinaryFile.read(new File(args[0]))));

    }

}

這里的read()方法將整個文件以bytes數組的形式返回。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM