帖子
帖子
用户
博客
课程
显示全部楼层
8
帖子
0
勋章
26
Y币

[其他] fs 读取文件,转成16进制怎么 和文件16进制查看不一样

[复制链接]
发表于 2017-10-19 10:29:23
       
var str_content='';
var fs = api.require('fs');
fs.open({
    path:'fs://ASTW23.001',
    flags:'read_write'
},function(ret, err) {
    if (ret.status) {
        var fd = ret.fd;            //fd为文件句柄
        fs.read({
            fd:fd,
            offset: 0
        },function(ret,err){
            if (ret.status) {
                                str_content=ret.data;
                               
                         
                                  myWrite(stringToHex(str_content));
                 
            alert(stringToHex(str_content));
            } else{
                 alert(JSON.stringify(err));
            }
        });
    }
});


function stringToHex(str){
    var val="";
    for(var i = 0; i < str.length; i++){
      if(val == "")
        val = str.charCodeAt(i).toString(16);
      else
        val += "," + str.charCodeAt(i).toString(16);
    }
    return val;
  }


转出的16进制 别人正常是1f 8b 我的是1f fffd

4
帖子
0
勋章
3524
Y币
你先打印下str_content这个是什么数据,编码对了没
8
帖子
0
勋章
26
Y币
piewun949116 发表于 2017-10-19 10:45
你先打印下str_content这个是什么数据,编码对了没

我读的文件不是文本文件,打开本来就是乱码,
您需要登录后才可以回帖 登录

本版积分规则