jscript method for reading and writing binary files


The example in this article shows how jscript can read and write files in base 2. Share with you for your reference. The specific implementation method is as follows:

var bin = new Array(256);
for(var i=0;i<256;i++){
  bin[i]=String.fromCharCode(i);
}
function TestWrite(){
  var Stream = new ActiveXObject("ADODB.Stream");
  var adTypeBinary=1,adTypeText=2;
  Stream.Type = adTypeText;
  Stream.CharSet = "iso-8859-1";
  Stream.Open();
  //Stream.WriteText("\x00\x01\x02\xff\xff");
  for(var i=0;i<256;i++){
    Stream.WriteText(String.fromCharCode(i));
    //Stream.WriteText(bin[i]);
  }
  Stream.SaveToFile("c:\\windows\\temp\\test.bin", 2);
  Stream.Close();
  Stream = null;
}
function BinaryFile(filepath){
  var adTypeBinary=1,adTypeText=2;
  var adSaveCreateNotExist=1,adSaveCreateOverWrite=2;
  var adReadAll=-1,adReadLine=-2;
  this.path=filepath;
  this.WriteAll = function(content){
    var Stream = new ActiveXObject("ADODB.Stream");
    Stream.Type = adTypeText;
    Stream.CharSet = "iso-8859-1";
    Stream.Open();
    Stream.WriteText(content);
    Stream.SaveToFile(this.path, adSaveCreateOverWrite);
    Stream.Close();
    Stream = null;
  }
  this.ReadAll = function(){
    var Stream = new ActiveXObject("ADODB.Stream");
    Stream.Type = adTypeText;
    Stream.CharSet = "iso-8859-1";
    Stream.Open();
    Stream.LoadFromFile(this.path);
    var content = Stream.ReadText(adReadAll);
    Stream.Close();
    Stream = null;
    return content;
  }
}

Usage examples are as follows:

var crFolder = 'C:/Temp/cr'
var bf1=new BinaryFile(crFolder+"/PCDV0026.JPG");
var bf2=new BinaryFile(crFolder+"/PCDV0026_.JPG");
bf2.WriteAll(bf1.ReadAll());

I hope this article has been helpful to your javascript programming.