java:
package com.iofamily.app;import java.io.File;import com.iofamily.util.FileUtils;/** * @author lmiky * @date 2013-11-7 */public class Test {/** * 位元組轉為16進位 * @author lmiky * @date 2014-5-14 * @param src * @return */public static String bytesToHexString(byte[] src) {StringBuilder stringBuilder = new StringBuilder("");if (src == null || src.length <= 0) {return null;}for (int i = 0; i < src.length; i++) {int v = src[i] & 0xFF;String hv = Integer.toHexString(v);if (hv.length() < 2) {stringBuilder.append(0);}stringBuilder.append(hv);}return stringBuilder.toString();}public static void main(String[] args) throws Exception {String sourceFile = "D:/test.jpg";File file = new File(sourceFile);byte[] bytes = FileUtils.readFile(file);String hexStr = bytesToHexString(bytes);System.out.println(hexStr);}}
nodejs:
var utils = require('./utils');var fs = require('fs');var fileUtils = module.exports;/** * 將檔案位元據轉成檔案 * @param fileBytesHex 讀取檔案為2進位資料後轉為16進位字串 * @param fileName * @param cb */fileUtils.parseByteToFile = function(fileBytesHex, fileName, cb) {fs.writeFile(fileName, new Buffer(fileBytesHex, 'hex'), function(err) {utils.invokeCallback(cb, err);});}