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

来源:互联网 发布:腾讯程序员招聘要求 编辑:程序博客网 时间:2024/05/16 16:14

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



0 0