com.docomostar.fs
クラス InternalStorageFolder

Object
  上位を拡張 com.docomostar.fs.InternalStorageFolder

public class InternalStorageFolder
extends Object

内部ストレージに作成されたフォルダを定義します。

このクラスのインスタンスはフォルダへのパス名を保持します。
各メソッドは、呼び出された時点で内部ストレージデバイスのそのパス名のフォルダに対して各種の処理を行います。
なお、 "/" をパス区切り文字として扱います。
getFolderPath() を実行することで得られるパス名に、実行したインスタンスのフォルダ名も含まれます。 フォルダ名は、パス名の最後のパス区切り文字("/")から文字列の最後までが該当します。

実装によっては、同じフォルダの実体(内部ストレージ上の実際のフォルダ)を表す複数の InternalStorageFolder インスタンスが存在する場合があります。 その場合でも、 InternalStorageFolder インスタンスへのメソッド呼び出しは、 どのインスタンスに対するものであっても同一フォルダへのアクセスとみなされます。
すなわち、ある InternalStorageFolder インスタンス f1 でファイルを新たに生成した場合は、 同じフォルダを表す異なる InternalStorageFolder インスタンス f2 に対してそのフォルダに含まれる全てのファイルのインスタンスを取得するメソッドを呼び出すと、 新たに生成したファイルも含む全てのファイルのインスタンスが返されます。

導入されたバージョン:
Star-2.0

メソッドの概要
 InternalStorageFile createFile(String fileName)
           内部ストレージにファイルを作成します。
 InternalStorageFolder createSubFolder(String folderName)
           内部ストレージにフォルダを作成します。
 void deleteFolder()
           フォルダを削除します。
 boolean equals(Object obj)
           渡されたオブジェクトとインスタンスを比較します。
 InternalStorageFile[] getAllFiles()
           ファイルの一覧を取得します。
 InternalStorageFolder[] getAllFolders()
           フォルダの一覧を取得します。
 InternalStorageFile getFile(String fileName)
           ファイル名を指定してファイルインスタンスを取得します。
 InternalStorageFolder getFolder(String folderName)
           フォルダ名を指定してフォルダインスタンスを取得します。
 String getFolderPath()
           このフォルダのパス名(絶対パス)を取得します。
 InternalStorageFolder getParentFolder()
           このフォルダが存在するフォルダインスタンスを取得します。
 int hashCode()
           このオブジェクトに対応するハッシュコードを返します。
 
クラス Object から継承されたメソッド
getClass, notify, notifyAll, toString, wait, wait, wait
 

メソッドの詳細

createSubFolder

public InternalStorageFolder createSubFolder(String folderName)
                                      throws java.io.IOException

内部ストレージにフォルダを作成します。

作成するフォルダのフォルダ名は、以下の形式で指定可能です。 ただし、フォルダ名として指定可能な文字数を超過した場合は、超過分を切り捨てます。
なお、フォルダ名は、超過分の切り捨てを行ってから指定可能な文字の確認を行います。

"xxxxxxxxxxxx" (xxxxxxxxxxxx:1〜12桁のASCII文字)
使用可能なASCII文字
A 〜 Z (大文字のみで、小文字を指定した場合は全て大文字として扱われます。)
0 〜 9
_ (アンダースコア)

フォルダを作成する階層に、既に同名のフォルダまたはファイルが存在している場合は例外が発生します。

パラメータ:
folderName - フォルダ名を指定します。
戻り値:
作成したフォルダを返します。
例外:
NullPointerException -
引数 folderName が null の場合に発生します。
IllegalArgumentException -
フォルダ名として登録できない文字が含まれていた場合、または空文字列が指定されていた場合に発生します。
FolderException -
(ALREADY_EXISTS)
既にこのフォルダに同名のフォルダまたはファイルが存在しているため、フォルダを新規作成できない場合に発生します。
FolderException -
(CANNOT_CREATE)
以下のフォルダを表すインスタンスから呼び出された場合に発生します。
  • ルートフォルダ
  • フォルダを作成できる階層数において、一番深い階層に存在するフォルダ
FileSystemFullException -
空き容量の範囲を超過して作成しようとした場合に発生します。
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FolderException -
(ACCESS_DENIED)
他 Star アプリ固有フォルダを表すインスタンスから呼び出された場合に発生します。

deleteFolder

public void deleteFolder()
                  throws java.io.IOException

フォルダを削除します。
削除対象のフォルダの配下にあるフォルダおよびファイルを全て削除します。

配下にあるファイルが既にオープンされている場合は、削除を中止し、例外が発生します。
配下に複数のファイルが存在する場合も同様で、一つでもファイルがオープンされている場合は例外が発生します。 このとき、オープンされていない他のファイルが削除されることはありません。

例外:
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FolderException -
(CANNOT_DELETE)
ルートフォルダを表すインスタンスから呼び出された場合に発生します。
FileNotAccessibleException -
(IN_USE)
削除しようとしているフォルダの配下にあるファイルが既にオープンされている場合に発生します。
FolderException -
(ACCESS_DENIED)
他 Star アプリ固有フォルダを表すインスタンスから呼び出された場合に発生します。

createFile

public InternalStorageFile createFile(String fileName)
                               throws java.io.IOException

内部ストレージにファイルを作成します。

作成するファイルのファイル名は、以下の形式で指定可能です。
ファイル名として指定可能な文字数を超過した場合は、x・・・xとy・・・yそれぞれの部分について超過分を切り捨てます。
なお、ファイル名は、超過分の切り捨てを行ってから指定可能な文字の確認を行います。
また、yyyを0桁とした場合に'.'を付加することはできません。その場合は例外が発生します。

"xxxxxxxx.yyy" (xxxxxxxx:1〜8桁のASCII文字、yyy:0〜3桁のASCII文字)
使用可能なASCII文字
A 〜 Z (大文字のみで、小文字を指定した場合は全て大文字として扱われます。)
0 〜 9
_ (アンダースコア)

ファイルを作成する階層に、既に同名のフォルダまたはファイルが存在している場合は、例外を返します。

パラメータ:
fileName - ファイル名を指定します。
戻り値:
作成したファイルを返します。
例外:
NullPointerException -
引数 fileName が null の場合に発生します。
IllegalArgumentException -
引数 fileName が不正である場合に発生します。具体的には以下の場合に発生します。
  • ファイル名として登録できない文字が含まれていた場合
  • 空文字列が指定されていた場合
  • 先頭または末尾が'.'の場合
FileNotAccessibleException -
(ALREADY_EXISTS)
既にこのフォルダに同名のフォルダまたはファイルが存在しているため、ファイルを新規作成できない場合に発生します。
FolderException -
(CANNOT_CREATE)
ルートフォルダを表すインスタンスから呼び出された場合に発生します。
FileSystemFullException -
空き容量の範囲を超過して作成しようとした場合に発生します。
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FolderException -
(ACCESS_DENIED)
他 Star アプリ固有フォルダを表すインスタンスから呼び出された場合に発生します。

getAllFolders

public InternalStorageFolder[] getAllFolders()
                                      throws java.io.IOException

フォルダの一覧を取得します。 このメソッドを実行するフォルダインスタンスが表すフォルダの直下に存在するフォルダの一覧を取得します。

フォルダが存在しない場合は長さ 0 の配列を返します。

このメソッドを呼び出すたびに新たなインスタンスを生成して返すか、 それとも、毎回同じインスタンスを返すかは機種依存です。
返される配列は、このオブジェクトが内部で保持している配列のコピーです。

戻り値:
フォルダの一覧を返します。
例外:
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FolderException -
(ACCESS_DENIED)
他 Star アプリ固有フォルダを表すインスタンスから呼び出された場合に発生します。

getAllFiles

public InternalStorageFile[] getAllFiles()
                                  throws java.io.IOException

ファイルの一覧を取得します。 このメソッドを実行するフォルダインスタンスが表すフォルダの直下に存在するファイルの一覧を取得します。

ファイルが存在しない場合は長さ 0 の配列を返します。

このメソッドを呼び出すたびに新たなインスタンスを生成して返すか、 それとも、毎回同じインスタンスを返すかは機種依存です。
返される配列は、このオブジェクトが内部で保持している配列のコピーです。

戻り値:
ファイルの一覧を返します。
例外:
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FolderException -
(ACCESS_DENIED)
他 Star アプリ固有フォルダを表すインスタンスから呼び出された場合に発生します。

getParentFolder

public InternalStorageFolder getParentFolder()
                                      throws java.io.IOException

このフォルダが存在するフォルダインスタンスを取得します。
ルートフォルダを表すインスタンスに対して実行した場合は、例外が発生します。

戻り値:
このフォルダが存在するフォルダインスタンスを返します。
例外:
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FolderException -
(NOT_FOUND)
実行するフォルダがルートフォルダである場合に発生します。
FolderException -
(ACCESS_DENIED)
他 Star アプリ固有フォルダを表すインスタンスから呼び出された場合に発生します。

getFolder

public InternalStorageFolder getFolder(String folderName)
                                throws java.io.IOException

フォルダ名を指定してフォルダインスタンスを取得します。

引数に指定可能なフォルダ名は、フォルダインスタンスが表すフォルダの直下に存在するフォルダの名前です。
小文字を指定した場合は、大文字として扱われます。

引数で指定したフォルダ名に対して超過分の切り捨てを行うことはありません。 つまり、フォルダを新規作成する際に FOLDER1234567 というフォルダ名を指定して作成した場合 FOLDER123456 というフォルダ名で作成されますが、このメソッドの引数に FOLDER1234567 を指定した場合は 取得対象のフォルダが存在しない場合に該当するとして例外が発生します。

パラメータ:
folderName - 取得したいフォルダのフォルダ名を指定します。
戻り値:
フォルダを返します。
例外:
NullPointerException -
引数 folderName に null を指定して呼び出した場合に発生します。
IllegalArgumentException -
引数 folderName にパス区切り文字("/")が含まれている場合に発生します。
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FolderException -
(NOT_FOUND)
取得対象のフォルダが存在しない場合に発生します。
FolderException -
(ACCESS_DENIED)
他 Star アプリ固有フォルダを表すインスタンスから呼び出された場合に発生します。

getFile

public InternalStorageFile getFile(String fileName)
                            throws java.io.IOException

ファイル名を指定してファイルインスタンスを取得します。

引数に指定可能なファイル名は、フォルダインスタンスが表すフォルダの直下に存在するファイルの名前です。
小文字を指定した場合は、大文字として扱われます。

引数で指定したファイル名に対して超過分の切り捨てを行うことはありません。 つまり、ファイルを新規作成する際に FILE12345.JPEG というファイル名を指定して作成した場合 FILE1234.JPE というファイル名で作成されますが、このメソッドの引数に FILE12345.JPEG を指定した場合は 取得対象のファイルが存在しない場合に該当するとして例外が発生します。

パラメータ:
fileName - 取得したいファイルのファイル名を指定します。
戻り値:
ファイルインスタンスを返します。
例外:
NullPointerException -
引数 fileName に null を指定して呼び出した場合に発生します。
IllegalArgumentException -
引数 fileName にパス区切り文字("/")が含まれている場合に発生します。
IllegalStateException -
既にこのフォルダが削除されている場合に発生します。
FileNotAccessibleException -
(NOT_FOUND)
取得対象のファイルが存在しない場合に発生します。