public static interface MultipartFormData.Entity
フォームから送信された情報を解析した結果の各エンティティは、
ヘッダ情報とデータで構成されます。
修飾子とタイプ | メソッドと説明 |
---|---|
boolean |
containsHeader(String name)
指定された文字列がヘッダの名称かどうかを判定します。
|
byte[] |
getBytes()
データ部をバイト配列として取得します。
|
String |
getContent()
データ部を文字列表現として取得します。
|
String |
getContent(String enc)
データ部を指定された文字コードで変換した結果を文字列表現として
取得します。
|
int |
getContentLength()
データ部のバイト長を取得します。
|
default long |
getContentLengthLong()
データ部のバイト長を取得します。
|
String |
getFileName()
アップロードされたファイルのファイル名を取得します。
|
String |
getHeader(String name)
ヘッダの取得。
|
String[] |
getHeaderNames()
ヘッダ名称一覧の取得。
|
InputStream |
getInputStream()
データ部を入力ストリームとして取得します。
|
String |
getName()
フォームのコントロール名称の取得。
|
Reader |
getReader()
非推奨です。
getReader(String) に置き換えられました。 |
Reader |
getReader(String encoding)
データ部を Reader として取得します。
|
String getName()
フォームから送信された情報のうち、このエンティティが表す情報の
もととなったフォーム中に定義されたコントロールの名称を返します。
String getFileName()
Content-Disposition: form-data; name="ctrl_name"; filename="file_path"
ヘッダは、上記のような形式で受け取れる
ctrl_name: <INPUT type="file"> の name 属性
file_path: クライアントでのファイル名
ヘッダ情報は他にもあるが、上記の行のみを対象に解析を行う
String[] getHeaderNames()
このエンティティのもつヘッダ情報の名称一覧を返します。
String getHeader(String name)
返却値は、文字エンコーディングの変換が行われていない状態の文字列を返却します。 具体的には、javax.servlet.ServletRequest#getInputStream()を利用して リクエストの内容をバイト配列で取得し、それを「ISO-8859-1」で文字列化した内容が返却されます。
別のエンコーディングに変換する場合、以下のようなコードで変換する必要があります。
byte[] rawData = entity.getHeader(headerName).getBytes("ISO-8859-1"); String encodedValue = new String(rawData, request.getCharacterEncoding());
name
- ヘッダ名称boolean containsHeader(String name)
name
- ヘッダ名称int getContentLength()
default long getContentLengthLong()
String getContent()
入力されたバイトデータから文字列への変換には、Application Runtimeが稼動しているJavaVMの
デフォルト文字エンコーディングを使います。
String getContent(String enc) throws UnsupportedEncodingException
指定のエンコード名がサポートされていない場合
UnsupportedEncodingException がスローされます。
enc
- エンコード名UnsupportedEncodingException
UnsupportedEncodingException
byte[] getBytes()
@Deprecated Reader getReader()
getReader(String)
に置き換えられました。このReaderが文字に変換する際に使用する文字エンコーディングは、Application Runtimeが稼動している JavaVMのデフォルト文字エンコーディングです。
Reader getReader(String encoding)
このReaderが文字に変換する際に使用する文字エンコーディングは、指定した文字エンコーディングです。
データ部の文字エンコーディング
- InputStream getInputStream()
Copyright © 2012 NTT DATA INTRAMART CORPORATION