org.apache.commons.fileupload
クラス DefaultFileItem

java.lang.Object
  拡張org.apache.commons.fileupload.DefaultFileItem
すべての実装インタフェース:
FileItem, Serializable

public class DefaultFileItem
extends Object
implements FileItem

FileItem インターフェイスの標準実装です。

DiskFileUpload からこのクラスインスタンスを取得した後 (#parseRequest(javax.servlet.http.HttpServletRequest)) を参照)、 get() メソッドを使ってすべてのファイルの内容を(メモリ上に)取得するか、 getInputStream() メソッドを使って InputStream を取得し、メモリ上に展開することなく ファイルを処理する(大きなファイルを扱う場合に有用)かを選択することができます。

バージョン:
$Id: DefaultFileItem.java,v 1.5 2004/04/07 04:00:48 hioki Exp $
作成者:
Rafal Krzewski, Sean Legassick, Jason van Zyl, John McNally, Martin Cooper, Sean C. Sullivan
関連項目:
直列化された形式
翻訳者:
日置 聡
校正者:
入江 弘憲

フィールドの概要
private  byte[] cachedContent
          キャッシュされたファイルの内容。
private  String contentType
          ブラウザによって付加されたコンテントタイプ。
private static int counter
          固有の識別子を生成するために使用されるカウンタ。
private  DeferredFileOutputStream dfos
          このアイテムの出力ストリーム。
private  String fieldName
          ブラウザによって付加されたフォームフィールド名。
private  String fileName
          ユーザのファイルシステム上でのオリジナルのファイル名。
private  boolean isFormField
          このアイテムが単純なフォームフィールドかどうか。
private  File repository
          ディスク上に保持する場合にアップロードファイルが保存されるディレクトリ。
private  int sizeThreshold
          アップロードファイルをディスク上に保持するかどうかの閾値。
 
コンストラクタの概要
(パッケージプライベート) DefaultFileItem(String fieldName, String contentType, boolean isFormField, String fileName, int sizeThreshold, File repository)
          新規 DefaultFileItem インスタンスを生成します。
 
メソッドの概要
 void delete()
          関係する一時ディスク領域も含むストレージ上のファイルアイテムを削除します。
protected  void finalize()
          一時領域からファイルの内容を削除します。
 byte[] get()
          ファイルの内容をバイト配列で返します。
 String getContentType()
          ブラウザによって付加されたコンテントタイプを返します。
 String getFieldName()
          ファイルアイテムに対応したマルチパートフォームフィールド名を返します。
 InputStream getInputStream()
          ファイルの内容を取得するための InputStream を返します。
 String getName()
          クライアントのファイルシステム上でのオリジナルのファイル名を返します。
 OutputStream getOutputStream()
          ファイルの内容を保持するための OutputStream を返します。
 long getSize()
          ファイルアイテムのサイズを返します。
 File getStoreLocation()
          一時領域に保持されている FileItem のデータを示す File オブジェクトを返します。
 String getString()
          デフォルトのキャラクタエンコーディングを使用してファイルの内容の文字列表現を返します。
 String getString(String encoding)
          指定されたエンコーディングを使用してファイルの内容の文字列表現を返します。
protected  File getTempFile()
          設定されたリポジトリパス内の固有名称の一時ファイルを表す File を作成して返します。
private static String getUniqueId()
          このクラスをロードするクラスローダ内で固有の(しかしランダムに見えない)識別子を返します。
 boolean isFormField()
          FileItem インスタンスが単純なフォームフィールドを示すかどうかを判断します。
 boolean isInMemory()
          ファイルの内容をメモリ上から読み込むことができるかどうかを示します。
 void setFieldName(String fieldName)
          このファイルアイテムを参照するためのフィールド名を設定します。
 void setFormField(boolean state)
          FileItem インスタンスが単純なフォームフィールドを示すかどうかを設定します。
 void write(File file)
          アップロードアイテムをディスクに書き出すための簡易メソッドです。
 
クラス java.lang.Object から継承したメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

counter

private static int counter
固有の識別子を生成するために使用されるカウンタ。


fieldName

private String fieldName
ブラウザによって付加されたフォームフィールド名。


contentType

private String contentType
ブラウザによって付加されたコンテントタイプ。 定義されていない場合には null 。


isFormField

private boolean isFormField
このアイテムが単純なフォームフィールドかどうか。


fileName

private String fileName
ユーザのファイルシステム上でのオリジナルのファイル名。


sizeThreshold

private int sizeThreshold
アップロードファイルをディスク上に保持するかどうかの閾値。


repository

private File repository
ディスク上に保持する場合にアップロードファイルが保存されるディレクトリ。


cachedContent

private byte[] cachedContent
キャッシュされたファイルの内容。


dfos

private DeferredFileOutputStream dfos
このアイテムの出力ストリーム。

コンストラクタの詳細

DefaultFileItem

DefaultFileItem(String fieldName,
                String contentType,
                boolean isFormField,
                String fileName,
                int sizeThreshold,
                File repository)
新規 DefaultFileItem インスタンスを生成します。

パラメータ:
fieldName - フォームフィールド名。
contentType - ブラウザによって付加されたコンテントタイプ。 定義されていない場合には null
isFormField - このアイテムがアップロードファイルではなく 単純なフォームフィールドかどうか。
fileName - ユーザのファイルシステム上でのオリジナルのファイル名。 定義されていない場合には null
sizeThreshold - このアイテムがメモリ上に保持されるか、ファイルとして保存されるかの バイト単位の閾値。
repository - アイテムのサイズが閾値を超えた場合にファイルを生成し 保存するディレクトリの位置。
メソッドの詳細

getInputStream

public InputStream getInputStream()
                           throws IOException
ファイルの内容を取得するための InputStream を返します。

定義:
インタフェース FileItem 内の getInputStream
戻り値:
ファイルの内容を取得するための InputStream
例外:
IOException - エラーが発生した場合。

getContentType

public String getContentType()
ブラウザによって付加されたコンテントタイプを返します。 定義されていない場合には null を返します。

定義:
インタフェース FileItem 内の getContentType
戻り値:
ブラウザによって付加されたコンテントタイプ。 定義されていない場合には null

getName

public String getName()
クライアントのファイルシステム上でのオリジナルのファイル名を返します。

定義:
インタフェース FileItem 内の getName
戻り値:
クライアントのファイルシステム上でのオリジナルのファイル名。

isInMemory

public boolean isInMemory()
ファイルの内容をメモリ上から読み込むことができるかどうかを示します。

定義:
インタフェース FileItem 内の isInMemory
戻り値:
true ファイルの内容をメモリ上から読み込むことができる場合; false その他の場合。

getSize

public long getSize()
ファイルアイテムのサイズを返します。

定義:
インタフェース FileItem 内の getSize
戻り値:
ファイルアイテムのバイト単位のサイズ。

get

public byte[] get()
ファイルの内容をバイト配列で返します。 ファイルの内容がまだメモリ上にキャッシュされていない場合、 ディスクストレージからロードし、キャッシュします。

定義:
インタフェース FileItem 内の get
戻り値:
ファイルの内容を示すバイト配列。

getString

public String getString(String encoding)
                 throws UnsupportedEncodingException
指定されたエンコーディングを使用してファイルの内容の文字列表現を返します。 このメソッドはファイルの内容を取得するために get() メソッドを使用します。

定義:
インタフェース FileItem 内の getString
パラメータ:
encoding - 使用するキャラクタエンコーディング。
戻り値:
ファイルの内容の文字列表現。
例外:
UnsupportedEncodingException - 指定されたエンコーディングが利用できなかった場合。

getString

public String getString()
デフォルトのキャラクタエンコーディングを使用してファイルの内容の文字列表現を返します。 このメソッドはファイルの内容を取得するために get() メソッドを使用します。

定義:
インタフェース FileItem 内の getString
戻り値:
ファイルの内容の文字列表現。

write

public void write(File file)
           throws Exception
アップロードアイテムをディスクに書き出すための簡易メソッドです。 クライアントコードはアイテムがメモリに保持されているか、ディスクの一時領域に保持されているかを考慮しません。 アップロードアイテムをファイルに書き出すことだけを考えます。

この実装はもしアイテムがディスク上に展開されている場合、 最初にアップロードアイテムを指定された名称のファイルに変更する事を試みます。 それ以外の場合にはデータを指定されたファイルにコピーします。

このメソッドは、1つのアイテムについて最初に実行された1度だけ、動作することが保証されます。 (1度処理を行った後には)このメソッドは一時ファイルの名称を変更してしまうので、 次にコピーまたは名称の変更をしようとしても、そのファイルはもう既に利用できません。

定義:
インタフェース FileItem 内の write
パラメータ:
file - アップロードアイテムの出力先となる File
例外:
Exception - エラーが発生した場合。

delete

public void delete()
関係する一時ディスク領域も含むストレージ上のファイルアイテムを削除します。 FileItem インスタンスがガベージコレクションにかかった時にこのストレージは削除されますが、 このメソッドは早く確実に削除を実施し、システムリソースを保護します。

定義:
インタフェース FileItem 内の delete

getFieldName

public String getFieldName()
ファイルアイテムに対応したマルチパートフォームフィールド名を返します。

定義:
インタフェース FileItem 内の getFieldName
戻り値:
フォームフィールド名。
関連項目:
setFieldName(java.lang.String)

setFieldName

public void setFieldName(String fieldName)
このファイルアイテムを参照するためのフィールド名を設定します。

定義:
インタフェース FileItem 内の setFieldName
パラメータ:
fieldName - フォームフィールド名。
関連項目:
getFieldName()

isFormField

public boolean isFormField()
FileItem インスタンスが単純なフォームフィールドを示すかどうかを判断します。

定義:
インタフェース FileItem 内の isFormField
戻り値:
true インスタンスが単純なフォームフィールドを示す場合; false インスタンスがアップロードされたファイルを示す場合。
関連項目:
setFormField(boolean)

setFormField

public void setFormField(boolean state)
FileItem インスタンスが単純なフォームフィールドを示すかどうかを設定します。

定義:
インタフェース FileItem 内の setFormField
パラメータ:
state - true インスタンスが単純なフォームフィールドを示す場合; false インスタンスがアップロードされたファイルを示す場合。
関連項目:
isFormField()

getOutputStream

public OutputStream getOutputStream()
                             throws IOException
ファイルの内容を保持するための OutputStream を返します。

定義:
インタフェース FileItem 内の getOutputStream
戻り値:
ファイルの内容を保持するための OutputStream
例外:
IOException - エラーが発生した場合。

getStoreLocation

public File getStoreLocation()
一時領域に保持されている FileItem のデータを示す File オブジェクトを返します。 FileItem がデータをメモリ上に保持している場合には、 このメソッドは null を返します。 大きなファイルを扱う際には、もし一時領域と移動先の論理ボリュームが同じなら File.renameTo(java.io.File) を使ってデータのコピーを行うことなく新しい位置に移動することができます。

戻り値:
データファイル。データがメモリ上に保持されている場合には null

finalize

protected void finalize()
一時領域からファイルの内容を削除します。


getTempFile

protected File getTempFile()
設定されたリポジトリパス内の固有名称の一時ファイルを表す File を作成して返します。

戻り値:
一時領域内の File

getUniqueId

private static String getUniqueId()
このクラスをロードするクラスローダ内で固有の(しかしランダムに見えない)識別子を返します。

戻り値:
(ランダムに見えない)インスタンス識別子の文字列。


このドキュメントは、Ja-Jakartaにより訳されました。 コメントがある場合は report@jajakarta.orgまでお願いします。
Translated into Japanese by jajakarta.org. The original page is here.
Copyright (c) 2002-2003 - Apache Software Foundation