我想将一个 char 指针从 v8 返回到 javascript,但它不起作用。在 js 中,结果的长度不好。例如,在 v8 中 outlength 是 43529bytes,在 js 中我只有 4 个字节。使用 return String::New((char *)img); 是否正确?
Javascript:
var result = module.encode();
console.log(result.length);
V8
Handle<Value> encode(const Arguments& args) {
FILE *pInputFile = fopen ( "images/file.rgb" , "rb" );
if (!pInputFile ) {
fprintf(stderr, "Could not open %s\n", "vr.rgb");
exit(1);
}
fseek (pInputFile , 0 , SEEK_END);
long lSizeInput = ftell (pInputFile );
rewind (pInputFile );
char *img=(char*) malloc(lSizeInput*sizeof( char ));
fread (img,1,lSizeInput,pInputFile);
cout<<"length = "<< lSizeInput<<endl;
return String::New((char *)img);
}