import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class HexFinder {
public static String format(byte []bt){
int line=0 ;
StringBuilder buf=new StringBuilder() ;
for(byte d:bt){
if(line%16==0)
buf.append(String.format("%05x: ", line)) ;
buf.append(String.format("%02x ", d)) ;
line++ ;
if(line%16==0)
buf.append("\n");
}
buf.append("\n") ;
return buf.toString();
}
public static byte[] readFile(String file) throws IOException{
InputStream is=new FileInputStream(file) ;
int length=is.available() ;
byte bt[]=new byte[length] ;
is.read(bt) ;
return bt;
}
public static void main(String[]agrs) throws IOException{
byte []bt=HexFinder.readFile("c:\\1.rar");
String hexData=HexFinder.format(bt) ;
System.out.println(hexData);
}
}
import java.io.IOException;
import java.io.InputStream;
public class HexFinder {
public static String format(byte []bt){
int line=0 ;
StringBuilder buf=new StringBuilder() ;
for(byte d:bt){
if(line%16==0)
buf.append(String.format("%05x: ", line)) ;
buf.append(String.format("%02x ", d)) ;
line++ ;
if(line%16==0)
buf.append("\n");
}
buf.append("\n") ;
return buf.toString();
}
public static byte[] readFile(String file) throws IOException{
InputStream is=new FileInputStream(file) ;
int length=is.available() ;
byte bt[]=new byte[length] ;
is.read(bt) ;
return bt;
}
public static void main(String[]agrs) throws IOException{
byte []bt=HexFinder.readFile("c:\\1.rar");
String hexData=HexFinder.format(bt) ;
System.out.println(hexData);
}
}
本文介绍了一个简单的Java程序,该程序能够读取指定文件并将其内容转换为十六进制形式进行显示。通过使用FileInputStream从文件中读取字节,并利用StringBuilder构建字符串输出,程序实现了对文件内容的十六进制格式化。
1603

被折叠的 条评论
为什么被折叠?



