CasperSecurity

Current Path : /proc/thread-self/root/usr/share/doc/nodejs/api/
Upload File :
Current File : //proc/thread-self/root/usr/share/doc/nodejs/api/string_decoder.html

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <meta name="nodejs.org:node-version" content="v12.22.9">
  <title>String decoder | Node.js v12.22.9 Documentation</title>
  <link rel="stylesheet" href="assets/style.css">
  <link rel="stylesheet" href="assets/hljs.css">
  <link rel="canonical" href="string_decoder.html">
</head>
<body class="alt apidoc" id="api-section-string_decoder">
  <div id="content" class="clearfix">
    <div id="column2" class="interior">
      <div id="intro" class="interior">
        <a href="/" title="Go back to the home page">
          Node.js
        </a>
      </div>
      <ul>
<li><a class="nav-documentation" href="documentation.html">About this documentation</a></li>
<li><a class="nav-synopsis" href="synopsis.html">Usage and example</a></li>
</ul>
<hr class="line"/>

<ul>
<li><a class="nav-assert" href="assert.html">Assertion testing</a></li>
<li><a class="nav-async_hooks" href="async_hooks.html">Async hooks</a></li>
<li><a class="nav-buffer" href="buffer.html">Buffer</a></li>
<li><a class="nav-addons" href="addons.html">C++ Addons</a></li>
<li><a class="nav-n-api" href="n-api.html">C/C++ Addons with N-API</a></li>
<li><a class="nav-embedding" href="embedding.html">C++ Embedder API</a></li>
<li><a class="nav-child_process" href="child_process.html">Child Processes</a></li>
<li><a class="nav-cluster" href="cluster.html">Cluster</a></li>
<li><a class="nav-cli" href="cli.html">Command line options</a></li>
<li><a class="nav-console" href="console.html">Console</a></li>
<li><a class="nav-crypto" href="crypto.html">Crypto</a></li>
<li><a class="nav-debugger" href="debugger.html">Debugger</a></li>
<li><a class="nav-deprecations" href="deprecations.html">Deprecated APIs</a></li>
<li><a class="nav-dns" href="dns.html">DNS</a></li>
<li><a class="nav-domain" href="domain.html">Domain</a></li>
<li><a class="nav-errors" href="errors.html">Errors</a></li>
<li><a class="nav-events" href="events.html">Events</a></li>
<li><a class="nav-fs" href="fs.html">File system</a></li>
<li><a class="nav-globals" href="globals.html">Globals</a></li>
<li><a class="nav-http" href="http.html">HTTP</a></li>
<li><a class="nav-http2" href="http2.html">HTTP/2</a></li>
<li><a class="nav-https" href="https.html">HTTPS</a></li>
<li><a class="nav-inspector" href="inspector.html">Inspector</a></li>
<li><a class="nav-intl" href="intl.html">Internationalization</a></li>
<li><a class="nav-modules" href="modules.html">Modules: CommonJS modules</a></li>
<li><a class="nav-esm" href="esm.html">Modules: ECMAScript modules</a></li>
<li><a class="nav-module" href="module.html">Modules: <code>module</code> API</a></li>
<li><a class="nav-packages" href="packages.html">Modules: Packages</a></li>
<li><a class="nav-net" href="net.html">Net</a></li>
<li><a class="nav-os" href="os.html">OS</a></li>
<li><a class="nav-path" href="path.html">Path</a></li>
<li><a class="nav-perf_hooks" href="perf_hooks.html">Performance hooks</a></li>
<li><a class="nav-policy" href="policy.html">Policies</a></li>
<li><a class="nav-process" href="process.html">Process</a></li>
<li><a class="nav-punycode" href="punycode.html">Punycode</a></li>
<li><a class="nav-querystring" href="querystring.html">Query strings</a></li>
<li><a class="nav-readline" href="readline.html">Readline</a></li>
<li><a class="nav-repl" href="repl.html">REPL</a></li>
<li><a class="nav-report" href="report.html">Report</a></li>
<li><a class="nav-stream" href="stream.html">Stream</a></li>
<li><a class="nav-string_decoder active" href="string_decoder.html">String decoder</a></li>
<li><a class="nav-timers" href="timers.html">Timers</a></li>
<li><a class="nav-tls" href="tls.html">TLS/SSL</a></li>
<li><a class="nav-tracing" href="tracing.html">Trace events</a></li>
<li><a class="nav-tty" href="tty.html">TTY</a></li>
<li><a class="nav-dgram" href="dgram.html">UDP/datagram</a></li>
<li><a class="nav-url" href="url.html">URL</a></li>
<li><a class="nav-util" href="util.html">Utilities</a></li>
<li><a class="nav-v8" href="v8.html">V8</a></li>
<li><a class="nav-vm" href="vm.html">VM</a></li>
<li><a class="nav-wasi" href="wasi.html">WASI</a></li>
<li><a class="nav-worker_threads" href="worker_threads.html">Worker threads</a></li>
<li><a class="nav-zlib" href="zlib.html">Zlib</a></li>
</ul>
<hr class="line"/>

<ul>
<li><a class="nav-https-github-com-nodejs-node" href="https://github.com/nodejs/node">Code repository and issue tracker</a></li>
</ul>

    </div>

    <div id="column1" data-id="string_decoder" class="interior">
      <header>
        <h1>Node.js v12.22.9 Documentation</h1>
        <div id="gtoc">
          <ul>
            <li>
              <a href="index.html">Index</a>
            </li>
            <li>
              <a href="all.html">View on single page</a>
            </li>
            <li>
              <a href="string_decoder.json">View as JSON</a>
            </li>
            
            <li class="edit_on_github"><a href="https://github.com/nodejs/node/edit/master/doc/api/string_decoder.md"><span class="github_icon"><svg height="16" width="16" viewBox="0 0 16.1 16.1" fill="currentColor"><path d="M8 0a8 8 0 0 0-2.5 15.6c.4 0 .5-.2.5-.4v-1.5c-2 .4-2.5-.5-2.7-1 0-.1-.5-.9-.8-1-.3-.2-.7-.6 0-.6.6 0 1 .6 1.2.8.7 1.2 1.9 1 2.4.7 0-.5.2-.9.5-1-1.8-.3-3.7-1-3.7-4 0-.9.3-1.6.8-2.2 0-.2-.3-1 .1-2 0 0 .7-.3 2.2.7a7.4 7.4 0 0 1 4 0c1.5-1 2.2-.8 2.2-.8.5 1.1.2 2 .1 2.1.5.6.8 1.3.8 2.2 0 3-1.9 3.7-3.6 4 .3.2.5.7.5 1.4v2.2c0 .2.1.5.5.4A8 8 0 0 0 16 8a8 8 0 0 0-8-8z"/></svg></span>Edit on GitHub</a></li>
          </ul>
        </div>
        <hr>
      </header>

      <div id="toc">
        <h2>Table of Contents</h2>
        <ul>
<li><a href="#string_decoder_string_decoder">String decoder</a><ul>
<li><a href="#string_decoder_class_stringdecoder">Class: <code>StringDecoder</code></a><ul>
<li><a href="#string_decoder_new_stringdecoder_encoding"><code>new StringDecoder([encoding])</code></a></li>
<li><a href="#string_decoder_stringdecoder_end_buffer"><code>stringDecoder.end([buffer])</code></a></li>
<li><a href="#string_decoder_stringdecoder_write_buffer"><code>stringDecoder.write(buffer)</code></a></li>
</ul>
</li>
</ul>
</li>
</ul>

      </div>

      <div id="apicontent">
        <h1>String decoder<span><a class="mark" href="#string_decoder_string_decoder" id="string_decoder_string_decoder">#</a></span></h1>
<!--introduced_in=v0.10.0-->

<blockquote>
<p>Stability: 2 - Stable</p>
</blockquote>
<!-- source_link=lib/string_decoder.js -->

<p>The <code>string_decoder</code> module provides an API for decoding <code>Buffer</code> objects into
strings in a manner that preserves encoded multi-byte UTF-8 and UTF-16
characters. It can be accessed using:</p>
<pre><code class="language-js">const { StringDecoder } = require(&#39;string_decoder&#39;);
</code></pre>
<p>The following example shows the basic use of the <code>StringDecoder</code> class.</p>
<pre><code class="language-js">const { StringDecoder } = require(&#39;string_decoder&#39;);
const decoder = new StringDecoder(&#39;utf8&#39;);

const cent = Buffer.from([0xC2, 0xA2]);
console.log(decoder.write(cent));

const euro = Buffer.from([0xE2, 0x82, 0xAC]);
console.log(decoder.write(euro));
</code></pre>
<p>When a <code>Buffer</code> instance is written to the <code>StringDecoder</code> instance, an
internal buffer is used to ensure that the decoded string does not contain
any incomplete multibyte characters. These are held in the buffer until the
next call to <code>stringDecoder.write()</code> or until <code>stringDecoder.end()</code> is called.</p>
<p>In the following example, the three UTF-8 encoded bytes of the European Euro
symbol (<code>€</code>) are written over three separate operations:</p>
<pre><code class="language-js">const { StringDecoder } = require(&#39;string_decoder&#39;);
const decoder = new StringDecoder(&#39;utf8&#39;);

decoder.write(Buffer.from([0xE2]));
decoder.write(Buffer.from([0x82]));
console.log(decoder.end(Buffer.from([0xAC])));
</code></pre>
<h2>Class: <code>StringDecoder</code><span><a class="mark" href="#string_decoder_class_stringdecoder" id="string_decoder_class_stringdecoder">#</a></span></h2>
<h3><code>new StringDecoder([encoding])</code><span><a class="mark" href="#string_decoder_new_stringdecoder_encoding" id="string_decoder_new_stringdecoder_encoding">#</a></span></h3>
<div class="api_metadata">
<span>Added in: v0.1.99</span>
</div><ul>
<li><code>encoding</code> {string} The character <a href="buffer.html#buffer_buffers_and_character_encodings">encoding</a> the <code>StringDecoder</code> will use.
<strong>Default:</strong> <code>&#39;utf8&#39;</code>.</li>
</ul>
<p>Creates a new <code>StringDecoder</code> instance.</p>
<h3><code>stringDecoder.end([buffer])</code><span><a class="mark" href="#string_decoder_stringdecoder_end_buffer" id="string_decoder_stringdecoder_end_buffer">#</a></span></h3>
<div class="api_metadata">
<span>Added in: v0.9.3</span>
</div><ul>
<li><code>buffer</code> {Buffer|TypedArray|DataView} A <code>Buffer</code>, or <code>TypedArray</code>, or
 <code>DataView</code> containing the bytes to decode.</li>
<li>Returns: {string}</li>
</ul>
<p>Returns any remaining input stored in the internal buffer as a string. Bytes
representing incomplete UTF-8 and UTF-16 characters will be replaced with
substitution characters appropriate for the character encoding.</p>
<p>If the <code>buffer</code> argument is provided, one final call to <code>stringDecoder.write()</code>
is performed before returning the remaining input.</p>
<h3><code>stringDecoder.write(buffer)</code><span><a class="mark" href="#string_decoder_stringdecoder_write_buffer" id="string_decoder_stringdecoder_write_buffer">#</a></span></h3>
<div class="api_metadata">
<details class="changelog"><summary>History</summary>
<table>
<tr><th>Version</th><th>Changes</th></tr>
<tr><td>v8.0.0</td>
<td><p>Each invalid character is now replaced by a single replacement character instead of one for each individual byte.</p>
</td></tr>
<tr><td>v0.1.99</td>
<td><p><span>Added in: v0.1.99</span></p>
</td></tr>
</table>
</details>
</div><ul>
<li><code>buffer</code> {Buffer|TypedArray|DataView} A <code>Buffer</code>, or <code>TypedArray</code>, or
 <code>DataView</code> containing the bytes to decode.</li>
<li>Returns: {string}</li>
</ul>
<p>Returns a decoded string, ensuring that any incomplete multibyte characters at
 the end of the <code>Buffer</code>, or <code>TypedArray</code>, or <code>DataView</code> are omitted from the
 returned string and stored in an internal buffer for the next call to
 <code>stringDecoder.write()</code> or <code>stringDecoder.end()</code>.</p>

        <!-- API END -->
      </div>
    </div>
  </div>
</body>
</html>

Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY