Files 外部オブジェクトを使用すると、プログラムによってデバイスから選択するファイルを
Blob や
BlobFile の項目属性や変数に割り当てることができます。
なし
デバイスからファイルを選択します。
このメソッドは、デバイス内でファイルを選択できるソースを表示します。iOS アプリケーションの場合、ソースは次のとおりです:
- ローカルファイル (アプリケーションの Sandbox 内のファイル)
- ファイルアプリケーション (iOS 11 以降)
- イメージギャラリー
オプションの
acceptedTypes パラメーターは、次のような MINE タイプのコンマ区切りのリストとして指定する必要があります:
- 画像ファイルのみを選択する場合は「image/*」と指定します。
- PDF ファイルについては「application/pdf」と指定します。
- 画像と PDF ファイルを選択できるようにする場合は、「image/*,application/pdf」と指定します。
注:
acceptedTypes パラメーターは、Android では
GeneXus 16 upgrade 10 以降で使用できます。iOS ではまだ使用できません。
acceptedTypes パラメーターが指定されていない場合は、すべてのファイルタイプが表示されます。
指定されたファイルをデバイスのシステムフォルダに保存します。
戻り値 Boolean
パラメーター fileUri
:URL、destination:DeviceFolder、/* saveMode: SaveMode */。
パラメーター saveMode はオプションです。既定の動作は名前の変更です。
なし
DeviceFolder
値: Documents、Dowloads。
SaveMode
値:
Rename: 保存先にファイルが既に存在する場合に、コピーが作成されます。
Replace: 保存先にファイルが既に存在する場合に、可能な場合はコンテンツを置き換えます。セキュリティ上の理由で置き換えできない場合は、名前が変更されます。
AskUser: 保存先にファイルが存在する場合に、置き換えるか名前を変更するかをユーザーに尋ねます。
保存先のフォルダにファイルが既に存在する場合、既定では、両方のファイルが維持されるように名前が変更されます。新しい名前で上書きされる場合、元の名前、括弧で囲まれたインデックス、ファイル拡張子で構成された名前になります。
たとえば、Name.ext を保存しようとしたときに、この名前のファイルが既に存在した場合は、Name(1).ext という名前で保存されます。Name(1).ext も存在している場合は、Name(2).ext という名前が使用されます。このルールでファイルが作成されます。
SaveMode が Replace であり、保存先フォルダにファイルが既に存在している場合は、可能な場合は新しいコンテンツで上書きされます。オーバーライドできない場合は、名前の変更が行われます。
Event 'SelectFile'
Composite
&BlobFile = Files.ChooseFile()
SaveFile(&BlobFile)
EndComposite
EndEvent
Event 'SaveToFolder'
&fileUrl = Reporte("MyPublicReport")
Files.SaveToFolder( &fileUrl, DeviceFolder.Documents)
EndEvent