Decoderとは? わかりやすく解説

デコーダー【decoder】


デコーダ 【decoder】

デコード処理を行う機器をいう。

【対】エンコーダ

デコーダ

【英】decoder

デコーダとは、データ圧縮暗号化など、符号化されたデータ復号化する(元に戻す機能を持つもののことである。

デコーダはデコードするもの全般を指すので、圧縮ファイル解凍暗号化された情報復号MP3などの音声圧縮ファイル再生、などはデコーダによって行われるといえる。デコーダはソフトウェアとして実現されているものもあれば、チップ実装されてハードウェア的に実現されているものもある。

デコーダの対義語エンコーダで、データをある規則圧縮した暗号化したりする符号化のためのソフトウェアのことを指す。デコーダが対応していないエンコーダ処理されデータは、複合化できない

デコーダはバーコードリーダのような機器でも利用されている。バーコードリーダでは、検出され波形データとして取り込みデータロジック値を正確に解析し一度スキャニングデータ認識している。

ソフトウェアのほかの用語一覧
機能:  ダンプ  ディスパッチ  ティップス  デコーダ  テンプレート  チュートリアル  割り込み

Decoder クラス

エンコード済みバイト シーケンス文字セット変換します

名前空間: System.Text
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public MustInherit Class
 Decoder
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public abstract class Decoder
[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public ref class Decoder abstract
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public abstract class Decoder
SerializableAttribute 
ComVisibleAttribute(true) 
public abstract class Decoder
解説解説

エンコーディングは、文字セットバイト シーケンス変換するプロセスです。デコードはその逆になりますエンコードされたバイト シーケンス文字セット変換するプロセスです。

Decoder では、複数ブロックにまたがるバイト シーケンス正確にデコードできるように、GetChars への連続する呼び出し間でステータス情報維持します。また、Decoder は、データ ブロック末尾後続バイト保持しその後バイト次のデコード操作使用します。したがって、GetDecoder と GetEncoder は、ネットワーク伝送ファイル操作役立ちます。これは、ネットワーク伝送ファイル操作では、完全なデータ ストリームではなくデータブロック処理することが多いためです。

GetCharCount メソッドは、バイト シーケンスデコードした結果生成される文字数判断しGetChars メソッドは、実際にデコード実行します

このクラス実装インスタンス取得するには、Encoding 実装GetDecoder メソッド使用します

バージョン考慮事項

継承時の注意 このクラスから継承する場合は、すべてのメンバオーバーライドする必要があります

使用例使用例

Decoder使用して2 つ異なバイト配列1 つ文字配列変換するコード例次に示します文字バイトいずれか配列またがってます。これは、ストリーム読み取るときの System.IO.StreamReader の内部処理似てます。

Imports System
Imports System.Text

Public Class dec
    
    Public Shared Sub Main()
        ' These bytes in UTF-8 correspond to 3 different Unicode
        ' characters: space (U+0020), # (U+0023), and the biohazard
        ' symbol (U+2623).  Note the biohazard symbol requires 3 bytes
        ' in UTF-8 (hexadecimal e2, 98, a3).  Decoders store state across
        ' multiple calls to GetChars, handling the case when one char
        ' is in multiple byte arrays.
        Dim bytes1 As Byte()
 =  {&H20, &H23, &HE2}
        Dim bytes2 As Byte()
 =  {&H98, &HA3}
        Dim chars(3) As Char
        
        Dim d As Decoder = Encoding.UTF8.GetDecoder()
        Dim charLen As Integer
 = d.GetChars(bytes1, 0, bytes1.Length, chars, 0)
        ' The value of charLen should be 2 now.
        charLen += d.GetChars(bytes2, 0, bytes2.Length, chars, charLen)
        Dim c As Char
        For Each c In  chars
            Console.Write("U+{0:X4}  ", Convert.ToUInt16(c)
 )
        Next c
    End Sub
End Class
using System;
using System.Text;
public class dec
{
    public static void Main()
    {
        // These bytes in UTF-8 correspond to 3 different Unicode
        // characters: space (U+0020), # (U+0023), and the biohazard
        // symbol (U+2623).  Note the biohazard symbol requires 3 bytes
        // in UTF-8 (hexadecimal e2, 98, a3).  Decoders store state
 across
        // multiple calls to GetChars, handling the case when one char
        // is in multiple byte arrays.
        byte[] bytes1 = { 0x20, 0x23, 0xe2 };
        byte[] bytes2 = { 0x98, 0xa3 };
        char[] chars = new char[3];

        Decoder d = Encoding.UTF8.GetDecoder();
        int charLen = d.GetChars(bytes1, 0, bytes1.Length, chars,
 0);
        // The value of charLen should be 2 now.
        charLen += d.GetChars(bytes2, 0, bytes2.Length, chars, charLen);
        foreach(char c in
 chars)
            Console.Write("U+{0:X4}  ", (ushort)c);
    }
}
using namespace System;
using namespace System::Text;
int main()
{
   
   // These bytes in UTF-8 correspond to 3 different Unicode
   // characters: space (U+0020), # (U+0023), and the biohazard
   // symbol (U+2623).  Note the biohazard symbol requires 3 bytes
   // in UTF-8 (hexadecimal e2, 98, a3).  Decoders store state across
   // multiple calls to GetChars, handling the case when one char
   // is in multiple byte arrays.
   array<Byte>^bytes1 = {0x20,0x23,0xe2};
   array<Byte>^bytes2 = {0x98,0xa3};
   array<Char>^chars = gcnew array<Char>(3);
   Decoder^ d = Encoding::UTF8->GetDecoder();
   int charLen = d->GetChars( bytes1, 0, bytes1->Length,
 chars, 0 );
   
   // The value of charLen should be 2 now.
   charLen += d->GetChars( bytes2, 0, bytes2->Length, chars, charLen );
   for ( UInt16 index(0); index < chars->Length; ++index
 )
   {
      Console::Write( "U+{0:X4}  ", static_cast<UInt16>(chars[ index
 ]) );

   }
}

import System.*;
import System.Text.*;

public class Dec
{
    public static void main(String[]
 args)
    {
        // These bytes in UTF-8 correspond to 3 different Unicode
        // characters: space (U+0020), # (U+0023), and the biohazard
        // symbol (U+2623).  Note the biohazard symbol requires 3 bytes
        // in UTF-8 (hexadecimal e2, 98, a3).  Decoders store state
 across
        // multiple calls to GetChars, handling the case when one char
        // is in multiple byte arrays.
        ubyte bytes1[] =  { 0x20, 0x23, 0xE2 };
        ubyte bytes2[] =  { 0x98, 0xA3 };
        char chars[] = new char[3];
        
        Decoder d = Encoding.get_UTF8().GetDecoder();
        int charLen = d.GetChars(bytes1, 0, bytes1.length, chars,
 0);
        
        // The value of charLen should be 2 now.
        charLen += d.GetChars(bytes2, 0, bytes2.length, chars, charLen);

        for (int iCtr = 0; iCtr < chars.length;
 iCtr++) {
            char c = chars[iCtr];
            Console.Write("U+{0}  ",((Int16)c).ToString("X4"));
        }
    } //main
} //Dec
継承階層継承階層
System.Object
  System.Text.Decoder
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Decoder コンストラクタ

Decoder クラス新しインスタンス初期化します。

名前空間: System.Text
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

解説解説
使用例使用例

次のコード例は、新しDecoder インスタンス初期化する 2 つ方法示してます。

Imports System
Imports System.Text

Class EncoderExample
    
    Public Shared Sub Main()
        ' A Decoder is obtained from an Encoding.
        Dim uni As New UnicodeEncoding()
        Dim dec1 As Decoder = uni.GetDecoder()
        
        ' A more direct technique.
        Dim dec2 As Decoder = Encoding.Unicode.GetDecoder()
        
        ' dec1 and dec2 seem to be the same.
        Console.WriteLine(dec1.ToString())
        Console.WriteLine(dec2.ToString())
        
        ' Note that their hash codes differ.
        Console.WriteLine(dec1.GetHashCode())
        Console.WriteLine(dec2.GetHashCode())
    End Sub
End Class
using System;
using System.Text;

class EncoderExample {
    public static void Main()
 {
        // A Decoder is obtained from an Encoding.
        UnicodeEncoding uni = new UnicodeEncoding();
        Decoder dec1 = uni.GetDecoder();

        // A more direct technique.
        Decoder dec2 = Encoding.Unicode.GetDecoder();

        // dec1 and dec2 seem to be the same.
        Console.WriteLine(dec1.ToString());
        Console.WriteLine(dec2.ToString());

        // Note that their hash codes differ.
        Console.WriteLine(dec1.GetHashCode());
        Console.WriteLine(dec2.GetHashCode());
    }
}
using namespace System;
using namespace System::Text;
int main()
{
   
   // A Decoder is obtained from an Encoding.
   UnicodeEncoding^ uni = gcnew UnicodeEncoding;
   Decoder^ dec1 = uni->GetDecoder();
   
   // A more direct technique.
   Decoder^ dec2 = Encoding::Unicode->GetDecoder();
   
   // dec1 and dec2 seem to be the same.
   Console::WriteLine( dec1 );
   Console::WriteLine( dec2 );
   
   // Note that their hash codes differ.
   Console::WriteLine( dec1->GetHashCode() );
   Console::WriteLine( dec2->GetHashCode() );
}

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Decoder プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Fallback 現在の Decoder オブジェクトの DecoderFallback オブジェクト取得または設定します
パブリック プロパティ FallbackBuffer 現在の Decoder オブジェクト関連付けられている DecoderFallbackBuffer オブジェクト取得します
参照参照

Decoder メソッド


パブリック メソッドパブリック メソッド

プロテクト メソッドプロテクト メソッド
参照参照

Decoder メンバ

エンコード済みバイト シーケンス文字セット変換します

Decoder データ型公開されるメンバを以下の表に示します


プロテクト コンストラクタプロテクト コンストラクタ
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Fallback 現在の Decoder オブジェクトの DecoderFallback オブジェクト取得または設定します
パブリック プロパティ FallbackBuffer 現在の Decoder オブジェクト関連付けられている DecoderFallbackBuffer オブジェクト取得します
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Decoder」の関連用語

Decoderのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Decoderのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
社団法人日本映像ソフト協会社団法人日本映像ソフト協会
Copyright © 2000-2024 Japan Video Software Association
日本バーコード日本バーコード
Copyright 1997-2024 (c) Nippon Barcode Co.,Ltd.. All rights are reserved.
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリデコーダの記事を利用しております。
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS