|
|||
|
|
|
|
|
FileSystem |
||
|
|||
クライアントPCのファイルシステムを操作するクラスです。
デフォルトプロパティはPathNameです。ValueTypeの指定は無効です。
FileSystemクラスは、ファイル名を仮想ファイル名として扱います。仮想ファイル名とは、特定のフォルダをルートフォルダとしてマップした、アクセス範囲に制約のあるファイル名です。ルートフォルダ以下のファイルだけがアクセス可能であり、ユーザの許可なくコンピュータ上のすべてのファイルに直接アクセスすることはできません。
FileSystemオブジェクトの初期化時に指定する属性(パブリック、プライベート)により、ルートフォルダにマップするフォルダは異なります。
仮想ファイル名の形式は、ファイルやフォルダを"/"(スラッシュ)で区切るという点を除けば、Windowsのファイルシステムと同様です。
仮想ファイル名は、カレントフォルダを基点とした相対パスとして扱われます。"/"から始まる絶対パスを指定した場合は、カレントフォルダに関わらず、ルートフォルダからの絶対パスとして扱われます。初期状態では、カレントフォルダはルートフォルダを指しています。
カレントフォルダはPathNameプロパティで取得でき、ChangeDirメソッドで変更できます。
(例)
(ルートフォルダ) ├ file1.txt ・・・ (1) └ folder1 ・・・ (2) ├ file2.txt ・・・ (3) └ folder2 ・・・ (4) └ file3.txt ・・・ (5)
|
カレントフォルダ |
相対パス |
絶対パス |
---|---|---|---|
(1) |
/ |
file1.txt |
/file1.txt |
/folder1 |
../file1.txt |
||
/folder1/folder2 |
../../file1.txt |
||
(2) |
/ |
folder1 |
/folder1 |
/folder1 |
. |
||
/folder1/folder2 |
.. |
||
(3) |
/ |
folder1/file2.txt |
/folder1/file2.txt |
/folder1 |
file2.txt |
||
/folder1/folder2 |
../file2.txt |
||
(4) |
/ |
folder1/folder2 |
/folder1/folder2 |
/folder1 |
folder2 |
||
/folder1/folder2 |
. |
||
(5) |
/ |
folder1/folder2/file3.txt |
/folder1/folder2/file3.txt |
/folder1 |
folder2/file3.txt |
||
/folder1/folder2 |
file3.txt |
コンストラクタにパブリック属性を指定したFileSystemオブジェクトは、以下のフォルダをルートフォルダとしてマップします。
OS |
ルートフォルダ |
---|---|
Android |
/storage/emulated/0/Android/data/jp.co.opst.bizsd.v1/files/FileSystem/root*1 *2 |
iOS |
(アプリケーションのホームディレクトリ)/Library/Caches/FileSystem/root 本ディレクトリはBiz/Browser AIおよびBiz/Browser SmartDevice以外からはアクセスできません。 |
Windowsタブレット |
(OSインストールドライブ)\Users\(ユーザー名)\AppData\Roaming\OpenStream\BizBrowser SmartDevice\root |
パブリック属性でマップされるフォルダは、すべてのCRSアプリケーションで共通のため、複数のCRSアプリケーションの間でファイルを共有できますが、ファイル名が衝突したり、不正にファイルの内容を参照されてしまう可能性があります。
コンストラクタにプライベート属性を指定したFileSystemオブジェクトは、以下のフォルダをルートフォルダにマップします。
OS |
ルートフォルダ |
---|---|
Android OS |
/data/data/jp.co.opst.bizsd.v1/files/FileSystem/private_root/(サーバ名)*1 *3 本ディレクトリはBiz/Browser SmartDevice以外からはアクセスできません。 |
iOS |
(アプリケーションのホームディレクトリ)/Library/Caches/FileSystem/private_root/(サーバ名) 本ディレクトリはBiz/Browser AIおよびBiz/Browser SmartDevice以外からはアクセスできません。 |
Windowsタブレット |
(OSインストールドライブ)\Users\(ユーザー名)\AppData\Roaming\OpenStream\BizBrowser SmartDevice\private_root\(サーバ名) |
プライベート属性でマップされるフォルダは、CRSアプリケーションをダウンロードしたサーバ名を含むため、サーバごとに個別にファイルを管理できます。別のサーバからダウンロードしたCRSプログラムからアクセスすることはできません。
また、プライベート属性のFileSystemオブジェクトは、Mountメソッドによりユーザが許可した任意のフォルダを仮想ファイル名にマウントすることができます。
ルートフォルダ以外の任意のファイルをアクセスするには、以下の方法があります。
・OpenDialogメソッド、SaveDialogメソッドによりユーザが選択した特定のファイルを開く
・Mountメソッドによりユーザが許可したフォルダを仮想ファイル名にマウントする(プライベート属性の場合)