java读取二进制文件传给nodejs保存

来源:互联网 发布:淘宝在美国 编辑:程序博客网 时间:2024/04/30 09:31
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);
}

}

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);
});
}



0 0