|
intra-mart(R) 5.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object jp.co.intra_mart.common.aid.jdk.util.charset.CharacterEncoder
このクラスは、文字エンコードの機能を提供します。
このクラスは、Java runtime が提供する通常の文字コード変換において 文字のマッピング定義の相違に起因して文字化けしてしまう現象を解決するための 一つの方法となります。 実際には、定義ファイルに設定されている文字をネイティブコードへ変換する前に 他の文字へ変更する事により、文字化けを防ぎます。
例えば、EUC_JP における文字「〜」は、
Unicode へ変換した際 0x301C(Wave Dash) にマッピングされます。
これに対して、SJIS では文字「〜」は、
Unicode の 0xFF5E(Fullwidth Tilde) にマッピングされています。
このため、相互に文字コード変換をすると、
文字「?」に置き換わると言う現象(いわゆる文字化け)が発生します。
このクラスでは、Unicode から SJIS へ変換する際に
Unicode の文字 0x301C(Wave Dash) を 0xFF5E(Fullwidth Tilde) へ変更してから
文字コード変換を行います。
定義ファイルは、クラスローダを利用して検索および読み込まれます。
したがって、定義ファイルはクラスパスに設定されているディレクトリまたは
アーカイブファイル内に配置する必要があります。
各文字エンコーディングと文字の変換テーブルの関連については、
定義ファイル jp/co/intra_mart/resources/charset/encoding/mapping.xml
に記載されています。
コンストラクタの概要 | |
CharacterEncoder(String enc)
文字コード変換のためのエンコーダを作成します。 |
メソッドの概要 | |
byte[] |
encode(char c)
指定の文字を getCharacterEncoding() で表される文字コードへ
エンコードします。 |
byte[] |
encode(char[] c)
指定の文字を getCharacterEncoding() で表される文字コードへ
エンコードします。 |
byte[] |
encode(String str)
指定の文字列を getCharacterEncoding() で表される文字コードへ
エンコードします。 |
String |
getCharacterEncoding()
このオブジェクトが対象としている文字エンコーディング名を返します。 |
String |
newString(char[] c)
getCharacterEncoding() で表される文字コードに対応した
新しい文字列を作成します。 |
String |
newString(String str)
getCharacterEncoding() で表される文字コードに対応した
新しい文字列を作成します。 |
protected void |
setCharacterEncoding(String enc)
このオブジェクトが対象とする文字エンコーディングを設定します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public CharacterEncoder(String enc) throws ResourceNotFoundException, ResourceFormatException, IOException
enc
- エンコーディング名
NullPointerException
- 引数が null の場合
ResourceNotFoundException
- 設定が見つからなかった場合
ResourceFormatException
- 設定情報が不適切だった場合
IOException
- 入出力エラーメソッドの詳細 |
public String getCharacterEncoding()
protected void setCharacterEncoding(String enc) throws ResourceFormatException, ResourceNotFoundException, IOException
enc
- エンコーディング名
NullPointerException
- 引数が null の場合
ResourceNotFoundException
- 設定が見つからなかった場合
ResourceFormatException
- 設定情報が不適切だった場合
IOException
- 入出力エラーpublic byte[] encode(char c) throws UnsupportedEncodingException, IOException
getCharacterEncoding()
で表される文字コードへ
エンコードします。
c
- 文字
UnsupportedEncodingException
IOException
public byte[] encode(char[] c) throws UnsupportedEncodingException, IOException
getCharacterEncoding()
で表される文字コードへ
エンコードします。
c
- 文字配列
UnsupportedEncodingException
IOException
public byte[] encode(String str) throws UnsupportedEncodingException, IOException
getCharacterEncoding()
で表される文字コードへ
エンコードします。
str
- 文字列
UnsupportedEncodingException
IOException
public String newString(String str)
getCharacterEncoding()
で表される文字コードに対応した
新しい文字列を作成します。返される文字列は、引数 str のマッピングを修正した 新しい文字列です。
str
- 文字列
public String newString(char[] c)
getCharacterEncoding()
で表される文字コードに対応した
新しい文字列を作成します。
返される文字列は、引数 c のマッピングを修正した
新しい文字列です。
引数の配列 c は変化しません。
c
- 文字配列
|
intra-mart(R) 5.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |