Редактировать
Мне не пришло в голову, что вы захотите это как строка.Модифицированный пример для этого.Он должен работать немного лучше, чем BufferedReader
, так как мы сами буферизируем.
public String binaryFileToHexString(final String path)
throws FileNotFoundException, IOException
{
final int bufferSize = 512;
final byte[] buffer = new byte[bufferSize];
final StringBuilder sb = new StringBuilder();
// open the file
FileInputStream stream = new FileInputStream(path);
int bytesRead;
// read a block
while ((bytesRead = stream.read(buffer)) > 0)
{
// append the block as hex
for (int i = 0; i < bytesRead; i++)
{
sb.append(String.format("%02X", buffer[i]));
}
}
stream.close();
return sb.toString();
}