Heim  >  Artikel  >  Web-Frontend  >  Anweisungen zur Verwendung der buffer.write-Methode in node.js_node.js

Anweisungen zur Verwendung der buffer.write-Methode in node.js_node.js

WBOY
WBOYOriginal
2016-05-16 16:27:471558Durchsuche

Methodenbeschreibung:

Schreiben Sie die Zeichenfolge mit der angegebenen Codierung an den Offset des Puffers.

Gibt zurück, wie viele Oktette geschrieben wurden.

Wenn der Puffer nicht über genügend Platz für die gesamte Zeichenfolge verfügt, wird nur der Teil der Zeichenfolge geschrieben.

Grammatik:

Code kopieren Der Code lautet wie folgt:

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

Empfangsparameter:

string String, die in den Puffer geschriebenen Daten.
Offset-Nummer, optional, Standard 0. Der Ort, an dem die Daten in den Puffer geschrieben werden.
Länge Zahl, optional, Standard: buffer.length – Offset, die Länge der zu schreibenden Daten
Kodierungszeichenfolge, das zu verwendende Kodierungsformat, optional, der Standardwert ist „utf8“.

Beispiel:

Code kopieren Der Code lautet wie folgt:

buf = neuer Puffer(256);

len = buf.write('u00bd u00bc = u00be', 0);

console.log(len " bytes: " buf.toString('utf8', 0, len));

Quellcode:

Code kopieren Der Code lautet wie folgt:

Buffer.prototype.write = Funktion(Zeichenfolge, Offset, Länge, Kodierung) {
  // Schreiben zulassen (Zeichenfolge, Kodierung)
  if (util.isString(offset) && util.isUndefined(length)) {
    Kodierung = Offset;
    Offset = 0;
  // Schreiben zulassen (String, Offset[, Länge], Kodierung)
  } else if (isFinite(offset)) {
    offset = ~~offset;
    if (isFinite(length)) {
      Länge = ~~Länge;
    } sonst {
      Kodierung = Länge;
      Länge = undefiniert;
    }
  // XXX Legacy Write(String, Encoding, Offset, Länge) – in v0.13 entfernen
  } sonst {
    if (!writeWarned) {
      if (process.throwDeprecation)
        throw new Error(writeMsg);
      sonst wenn (process.traceDeprecation)
        console.trace(writeMsg);
      sonst
        console.error(writeMsg);
      writeWarned = true;
    }
    var swap = Kodierung;
    Kodierung = Offset;
    offset = ~~length;
    Länge = Swap;
  }
  var verbleibend = this.length - offset;
  if (util.isUndefiniert(länge) || Länge > verbleibend)
    Länge = verbleibend;
  Kodierung = !!Kodierung ? (Kodierung '').toLowerCase() : 'utf8';
  if (string.length > 0 && (length < 0 || offset < 0))
    throw new RangeError('versuch, über die Puffergrenzen hinaus zu schreiben');
  var ret;
  Schalter (Kodierung) {
    case 'hex':
      ret = this.hexWrite(string, offset, length);
      Pause;
    Fall 'utf8':
    Fall 'utf-8':
      ret = this.utf8Write(string, offset, length);
      Pause;
    case 'ascii':
      ret = this.asciiWrite(string, offset, length);
      Pause;
    Fall 'binär':
      ret = this.binaryWrite(string, offset, length);
      Pause;
    Fall 'base64':
      // Warnung: maxLength wird in base64Write
nicht berücksichtigt       ret = this.base64Write(string, offset, length);
      Pause;
    Fall 'ucs2':
    Fall 'ucs-2':
    Fall 'utf16le':
    Fall 'utf-16le':
      ret = this.ucs2Write(string, offset, length);
      Pause;
    Standard:
      throw new TypeError('Unbekannte Kodierung: ' Kodierung);
  }
  return ret;
};
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn