0

我想将一个 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);

}
4

0 回答 0