﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class IndexableBinaryStringTools
   | Apache Lucene.NET 4.8.0-beta00013 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class IndexableBinaryStringTools
   | Apache Lucene.NET 4.8.0-beta00013 Documentation ">
    <meta name="generator" content="docfx 2.56.2.0">
    
    <link rel="shortcut icon" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/favicon.ico">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.css">
    <meta property="docfx:navrel" content="toc.html">
    <meta property="docfx:tocrel" content="core/toc.html">
    
    <meta property="docfx:rel" content="https://lucenenet.apache.org/docs/4.8.0-beta00009/">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <span id="forkongithub"><a href="https://github.com/apache/lucenenet" target="_blank">Fork me on GitHub</a></span>
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="/">
                <img id="logo" class="svg" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search">
            <ul class="level0 breadcrumb">
                <li>
                    <a href="https://lucenenet.apache.org/docs/4.8.0-beta00009/">API</a>
                     <span id="breadcrumb">
                        <ul class="breadcrumb">
                          <li></li>
                        </ul>
                    </span>   
                </li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Lucene.Net.Util.IndexableBinaryStringTools">
  
  
  <h1 id="Lucene_Net_Util_IndexableBinaryStringTools" data-uid="Lucene.Net.Util.IndexableBinaryStringTools" class="text-break">Class IndexableBinaryStringTools
  </h1>
  <div class="markdown level0 summary"><p>Provides support for converting byte sequences to <span class="xref">System.String</span>s and back again.
The resulting <span class="xref">System.String</span>s preserve the original byte sequences&apos; sort order.
<p>
The <span class="xref">System.String</span>s are constructed using a Base 8000h encoding of the original
binary data - each char of an encoded <span class="xref">System.String</span> represents a 15-bit chunk
from the byte sequence.  Base 8000h was chosen because it allows for all
lower 15 bits of char to be used without restriction; the surrogate range
[U+D8000-U+DFFF] does not represent valid chars, and would require
complicated handling to avoid them and allow use of char&apos;s high bit.
<p>
Although unset bits are used as padding in the final char, the original
byte sequence could contain trailing bytes with no set bits (null bytes):
padding is indistinguishable from valid information.  To overcome this
problem, a char is appended, indicating the number of encoded bytes in the
final content char.
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div><p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">IndexableBinaryStringTools</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Util.html">Lucene.Net.Util</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.dll</h6>
  <h5 id="Lucene_Net_Util_IndexableBinaryStringTools_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[Obsolete(&quot;Implement Analysis.TokenAttributes.ITermToBytesRefAttribute and store bytes directly instead. this class will be removed in Lucene 5.0&quot;)]
public static class IndexableBinaryStringTools</code></pre>
  </div>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools_Decode_System_Char___System_Int32_System_Int32_System_Byte___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools.Decode(System.Char%5B%5D%2CSystem.Int32%2CSystem.Int32%2CSystem.Byte%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L209">View Source</a>
  </span>
  <a id="Lucene_Net_Util_IndexableBinaryStringTools_Decode_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Decode*"></a>
  <h4 id="Lucene_Net_Util_IndexableBinaryStringTools_Decode_System_Char___System_Int32_System_Int32_System_Byte___System_Int32_System_Int32_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Decode(System.Char[],System.Int32,System.Int32,System.Byte[],System.Int32,System.Int32)">Decode(Char[], Int32, Int32, Byte[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Decodes the input <span class="xref">System.Char</span> sequence into the output <span class="xref">System.Byte</span> sequence. Before
calling this method, ensure that the output array has sufficient capacity
by calling <a class="xref" href="Lucene.Net.Util.IndexableBinaryStringTools.html#Lucene_Net_Util_IndexableBinaryStringTools_GetDecodedLength_System_Char___System_Int32_System_Int32_">GetDecodedLength(Char[], Int32, Int32)</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static void Decode(char[] inputArray, int inputOffset, int inputLength, byte[] outputArray, int outputOffset, int outputLength)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Char</span>[]</td>
        <td><span class="parametername">inputArray</span></td>
        <td><p><span class="xref">System.Char</span> sequence to be decoded </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputOffset</span></td>
        <td><p>Initial offset into <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputLength</span></td>
        <td><p>Number of chars in <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Byte</span>[]</td>
        <td><span class="parametername">outputArray</span></td>
        <td><p><span class="xref">System.Byte</span> sequence to store encoded result </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputOffset</span></td>
        <td><p>Initial offset into outputArray </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputLength</span></td>
        <td><p>Length of output, must be
      GetDecodedLength(inputArray, inputOffset, inputLength) </p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools_Decode_System_Char___System_Int32_System_Int32_System_SByte___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools.Decode(System.Char%5B%5D%2CSystem.Int32%2CSystem.Int32%2CSystem.SByte%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L227">View Source</a>
  </span>
  <a id="Lucene_Net_Util_IndexableBinaryStringTools_Decode_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Decode*"></a>
  <h4 id="Lucene_Net_Util_IndexableBinaryStringTools_Decode_System_Char___System_Int32_System_Int32_System_SByte___System_Int32_System_Int32_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Decode(System.Char[],System.Int32,System.Int32,System.SByte[],System.Int32,System.Int32)">Decode(Char[], Int32, Int32, SByte[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Decodes the input char sequence into the output sbyte sequence. Before
calling this method, ensure that the output array has sufficient capacity
by calling <a class="xref" href="Lucene.Net.Util.IndexableBinaryStringTools.html#Lucene_Net_Util_IndexableBinaryStringTools_GetDecodedLength_System_Char___System_Int32_System_Int32_">GetDecodedLength(Char[], Int32, Int32)</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[CLSCompliant(false)]
public static void Decode(char[] inputArray, int inputOffset, int inputLength, sbyte[] outputArray, int outputOffset, int outputLength)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Char</span>[]</td>
        <td><span class="parametername">inputArray</span></td>
        <td><p><span class="xref">System.Char</span> sequence to be decoded </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputOffset</span></td>
        <td><p>Initial offset into <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputLength</span></td>
        <td><p>Number of chars in <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.SByte</span>[]</td>
        <td><span class="parametername">outputArray</span></td>
        <td><p><span class="xref">System.Byte</span> sequence to store encoded result </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputOffset</span></td>
        <td><p>Initial offset into outputArray </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputLength</span></td>
        <td><p>Length of output, must be
      GetDecodedLength(inputArray, inputOffset, inputLength) </p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools_Encode_System_Byte___System_Int32_System_Int32_System_Char___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools.Encode(System.Byte%5B%5D%2CSystem.Int32%2CSystem.Int32%2CSystem.Char%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L129">View Source</a>
  </span>
  <a id="Lucene_Net_Util_IndexableBinaryStringTools_Encode_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Encode*"></a>
  <h4 id="Lucene_Net_Util_IndexableBinaryStringTools_Encode_System_Byte___System_Int32_System_Int32_System_Char___System_Int32_System_Int32_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Encode(System.Byte[],System.Int32,System.Int32,System.Char[],System.Int32,System.Int32)">Encode(Byte[], Int32, Int32, Char[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Encodes the input <span class="xref">System.Byte</span> sequence into the output char sequence.  Before
calling this method, ensure that the output array has sufficient
capacity by calling <a class="xref" href="Lucene.Net.Util.IndexableBinaryStringTools.html#Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_System_Byte___System_Int32_System_Int32_">GetEncodedLength(Byte[], Int32, Int32)</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static void Encode(byte[] inputArray, int inputOffset, int inputLength, char[] outputArray, int outputOffset, int outputLength)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Byte</span>[]</td>
        <td><span class="parametername">inputArray</span></td>
        <td><p><span class="xref">System.Byte</span> sequence to be encoded </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputOffset</span></td>
        <td><p>Initial offset into <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputLength</span></td>
        <td><p>Number of bytes in <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Char</span>[]</td>
        <td><span class="parametername">outputArray</span></td>
        <td><p><span class="xref">System.Char</span> sequence to store encoded result </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputOffset</span></td>
        <td><p>Initial offset into outputArray </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputLength</span></td>
        <td><p>Length of output, must be GetEncodedLength(inputArray, inputOffset, inputLength) </p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools_Encode_System_SByte___System_Int32_System_Int32_System_Char___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools.Encode(System.SByte%5B%5D%2CSystem.Int32%2CSystem.Int32%2CSystem.Char%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L146">View Source</a>
  </span>
  <a id="Lucene_Net_Util_IndexableBinaryStringTools_Encode_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Encode*"></a>
  <h4 id="Lucene_Net_Util_IndexableBinaryStringTools_Encode_System_SByte___System_Int32_System_Int32_System_Char___System_Int32_System_Int32_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.Encode(System.SByte[],System.Int32,System.Int32,System.Char[],System.Int32,System.Int32)">Encode(SByte[], Int32, Int32, Char[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Encodes the input <span class="xref">System.SByte</span> sequence into the output char sequence.  Before
calling this method, ensure that the output array has sufficient
capacity by calling <a class="xref" href="Lucene.Net.Util.IndexableBinaryStringTools.html#Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_System_SByte___System_Int32_System_Int32_">GetEncodedLength(SByte[], Int32, Int32)</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[CLSCompliant(false)]
public static void Encode(sbyte[] inputArray, int inputOffset, int inputLength, char[] outputArray, int outputOffset, int outputLength)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.SByte</span>[]</td>
        <td><span class="parametername">inputArray</span></td>
        <td><p><span class="xref">System.SByte</span> sequence to be encoded </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputOffset</span></td>
        <td><p>Initial offset into <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputLength</span></td>
        <td><p>Number of bytes in <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Char</span>[]</td>
        <td><span class="parametername">outputArray</span></td>
        <td><p><span class="xref">System.Char</span> sequence to store encoded result </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputOffset</span></td>
        <td><p>Initial offset into outputArray </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">outputLength</span></td>
        <td><p>Length of output, must be getEncodedLength </p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools_GetDecodedLength_System_Char___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools.GetDecodedLength(System.Char%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L101">View Source</a>
  </span>
  <a id="Lucene_Net_Util_IndexableBinaryStringTools_GetDecodedLength_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.GetDecodedLength*"></a>
  <h4 id="Lucene_Net_Util_IndexableBinaryStringTools_GetDecodedLength_System_Char___System_Int32_System_Int32_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.GetDecodedLength(System.Char[],System.Int32,System.Int32)">GetDecodedLength(Char[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the number of <span class="xref">System.Byte</span>s required to decode the given char sequence.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int GetDecodedLength(char[] encoded, int offset, int length)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Char</span>[]</td>
        <td><span class="parametername">encoded</span></td>
        <td><p>Char sequence to be decoded </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">offset</span></td>
        <td><p>Initial offset </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">length</span></td>
        <td><p>Number of characters </p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The number of <span class="xref">System.Byte</span>s required to decode the given char sequence </p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_System_Byte___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools.GetEncodedLength(System.Byte%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L68">View Source</a>
  </span>
  <a id="Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.GetEncodedLength*"></a>
  <h4 id="Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_System_Byte___System_Int32_System_Int32_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.GetEncodedLength(System.Byte[],System.Int32,System.Int32)">GetEncodedLength(Byte[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the number of chars required to encode the given <span class="xref">System.Byte</span>s.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static int GetEncodedLength(byte[] inputArray, int inputOffset, int inputLength)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Byte</span>[]</td>
        <td><span class="parametername">inputArray</span></td>
        <td><p>Byte sequence to be encoded </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputOffset</span></td>
        <td><p>Initial offset into <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputLength</span></td>
        <td><p>Number of bytes in <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The number of chars required to encode the number of <span class="xref">System.Byte</span>s. </p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_System_SByte___System_Int32_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools.GetEncodedLength(System.SByte%5B%5D%2CSystem.Int32%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L84">View Source</a>
  </span>
  <a id="Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.GetEncodedLength*"></a>
  <h4 id="Lucene_Net_Util_IndexableBinaryStringTools_GetEncodedLength_System_SByte___System_Int32_System_Int32_" data-uid="Lucene.Net.Util.IndexableBinaryStringTools.GetEncodedLength(System.SByte[],System.Int32,System.Int32)">GetEncodedLength(SByte[], Int32, Int32)</h4>
  <div class="markdown level1 summary"><p>Returns the number of chars required to encode the given <span class="xref">System.SByte</span>s.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[CLSCompliant(false)]
public static int GetEncodedLength(sbyte[] inputArray, int inputOffset, int inputLength)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.SByte</span>[]</td>
        <td><span class="parametername">inputArray</span></td>
        <td><p><span class="xref">System.SByte</span> sequence to be encoded </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputOffset</span></td>
        <td><p>Initial offset into <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">inputLength</span></td>
        <td><p>Number of sbytes in <code data-dev-comment-type="paramref" class="paramref">inputArray</code> </p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><p>The number of chars required to encode the number of <span class="xref">System.SByte</span>s. </p>
</td>
      </tr>
    </tbody>
  </table>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_IndexableBinaryStringTools.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.IndexableBinaryStringTools%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/apache/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/IndexableBinaryStringTools.cs/#L43" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 The Apache Software Foundation, Licensed under the <a href='http://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache License, Version 2.0</a><br> <small>Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation. <br>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</small>
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.js"></script>
  </body>
</html>
