最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node.js中的buffer.write方法使用說明

 更新時(shí)間:2014年12月10日 09:58:58   投稿:junjie  
這篇文章主要介紹了node.js中的buffer.write方法使用說明,本文介紹了buffer.write的方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下

方法說明:

將string使用指定的encoding寫入到buffer的offset處。

返回寫入了多少個(gè)八進(jìn)制字節(jié)。

如果Buffer沒有足夠的空間來適應(yīng)整個(gè)string,那么將只有string的部分被寫入。

語法:

復(fù)制代碼 代碼如下:

buffer.write(string, [offset], [length], [encoding])

接收參數(shù):

string                  String,被寫入buffer的數(shù)據(jù).
offet                   number,可選,默認(rèn)0.數(shù)據(jù)寫入到buffer的位置.
length                Number,可選,默認(rèn):buffer.length – offset,要寫入數(shù)據(jù)的長(zhǎng)度
encoding           String,需要使用的編碼格式,可選,默認(rèn)為”utf8″.

例子:

復(fù)制代碼 代碼如下:

buf = new Buffer(256);
 
len = buf.write('\u00bd + \u00bc = \u00be', 0);
 
console.log(len + " bytes: " + buf.toString('utf8', 0, len));

源碼:

復(fù)制代碼 代碼如下:

Buffer.prototype.write = function(string, offset, length, encoding) {
  // allow write(string, encoding)
  if (util.isString(offset) && util.isUndefined(length)) {
    encoding = offset;
    offset = 0;
  // allow write(string, offset[, length], encoding)
  } else if (isFinite(offset)) {
    offset = ~~offset;
    if (isFinite(length)) {
      length = ~~length;
    } else {
      encoding = length;
      length = undefined;
    }
  // XXX legacy write(string, encoding, offset, length) - remove in v0.13
  } else {
    if (!writeWarned) {
      if (process.throwDeprecation)
        throw new Error(writeMsg);
      else if (process.traceDeprecation)
        console.trace(writeMsg);
      else
        console.error(writeMsg);
      writeWarned = true;
    }
    var swap = encoding;
    encoding = offset;
    offset = ~~length;
    length = swap;
  }
  var remaining = this.length - offset;
  if (util.isUndefined(length) || length > remaining)
    length = remaining;
  encoding = !!encoding ? (encoding + '').toLowerCase() : 'utf8';
  if (string.length > 0 && (length < 0 || offset < 0))
    throw new RangeError('attempt to write beyond buffer bounds');
  var ret;
  switch (encoding) {
    case 'hex':
      ret = this.hexWrite(string, offset, length);
      break;
    case 'utf8':
    case 'utf-8':
      ret = this.utf8Write(string, offset, length);
      break;
    case 'ascii':
      ret = this.asciiWrite(string, offset, length);
      break;
    case 'binary':
      ret = this.binaryWrite(string, offset, length);
      break;
    case 'base64':
      // Warning: maxLength not taken into account in base64Write
      ret = this.base64Write(string, offset, length);
      break;
    case 'ucs2':
    case 'ucs-2':
    case 'utf16le':
    case 'utf-16le':
      ret = this.ucs2Write(string, offset, length);
      break;
    default:
      throw new TypeError('Unknown encoding: ' + encoding);
  }
  return ret;
};

相關(guān)文章

  • Node.js中readline模塊實(shí)現(xiàn)終端輸入

    Node.js中readline模塊實(shí)現(xiàn)終端輸入

    本文主要介紹了Node.js中readline模塊實(shí)現(xiàn)終端輸入,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • node.js中的fs.statSync方法使用說明

    node.js中的fs.statSync方法使用說明

    這篇文章主要介紹了node.js中的fs.statSync方法使用說明,本文介紹了fs.statSync的方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • 詳解Wondows下Node.js使用MongoDB的環(huán)境配置

    詳解Wondows下Node.js使用MongoDB的環(huán)境配置

    這篇文章主要介紹了詳解Wondows下Node.js使用MongoDB的環(huán)境配置,這里使用到了Mongoose驅(qū)動(dòng)來讓JavaScript操作MongoDB,需要的朋友可以參考下
    2016-03-03
  • 從零開始學(xué)習(xí)Node.js系列教程六:EventEmitter發(fā)送和接收事件的方法示例

    從零開始學(xué)習(xí)Node.js系列教程六:EventEmitter發(fā)送和接收事件的方法示例

    這篇文章主要介紹了Node.js EventEmitter發(fā)送和接收事件的方法,結(jié)合實(shí)例形式分析了EventEmitter發(fā)送和接收事件的原理、實(shí)現(xiàn)方法與相關(guān)操作技巧,需要的朋友可以參考下
    2017-04-04
  • Node.js之如何構(gòu)建UDP服務(wù)

    Node.js之如何構(gòu)建UDP服務(wù)

    這篇文章主要介紹了Node.js之如何構(gòu)建UDP服務(wù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-09-09
  • node-sass安裝失敗的原因與解決方法

    node-sass安裝失敗的原因與解決方法

    這篇文章主要給大家介紹了關(guān)于node-sass安裝失敗的原因與解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • node.js中RPC(遠(yuǎn)程過程調(diào)用)的實(shí)現(xiàn)原理介紹

    node.js中RPC(遠(yuǎn)程過程調(diào)用)的實(shí)現(xiàn)原理介紹

    這篇文章主要介紹了node.js中RPC(遠(yuǎn)程過程調(diào)用)的實(shí)現(xiàn)原理介紹,本文基于一個(gè)簡(jiǎn)單的RPC庫(kù)nodejs light_rpc實(shí)現(xiàn),需要的朋友可以參考下
    2014-12-12
  • node.js中的fs.writeFile方法使用說明

    node.js中的fs.writeFile方法使用說明

    這篇文章主要介紹了node.js中的fs.writeFile方法使用說明,本文介紹了fs.writeFile的方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • 前端node Session和JWT鑒權(quán)登錄示例詳解

    前端node Session和JWT鑒權(quán)登錄示例詳解

    關(guān)于前端鑒權(quán)登錄是比較常見的需求了,本文將從服務(wù)端渲染和前后端分離的不同角度下演示鑒權(quán),為大家介紹前端node Session和JWT鑒權(quán)登錄示例詳解
    2022-07-07
  • node實(shí)現(xiàn)分片下載的示例代碼

    node實(shí)現(xiàn)分片下載的示例代碼

    這篇文章主要介紹了node實(shí)現(xiàn)分片下載的示例代碼,使用場(chǎng)景包括基于瀏覽器的流文件片段傳輸、基于客戶端的分片下載等。感興趣的小伙伴們可以參考一下
    2018-10-10

最新評(píng)論

吴桥县| 华宁县| 共和县| 九龙坡区| 昭通市| 常州市| 汕尾市| 天峻县| 双鸭山市| 西畴县| 宁南县| 武汉市| 梁河县| 阳信县| 新郑市| 泌阳县| 洛阳市| 满城县| 黔西县| 三门县| 拉孜县| 锦州市| 茂名市| 奉化市| 休宁县| 余庆县| 读书| 十堰市| 贵阳市| 大田县| 来凤县| 海伦市| 临朐县| 绥阳县| 房山区| 左权县| 金山区| 安福县| 云南省| 潮安县| 兴安县|