Skip to content

$file.toMemFile

Description

Dans Ewt, les objets de type file peuvent être stockés soit en tant que référence de fichier existant dans le filesystem, soit en tant que tableau de bytes existant purement en mémoire.

Dans le cas d'un fichier envoyé par formulaire, c'est la taille du fichier qui détermine de quelle façon le fichier est conservé (ce mécanisme est implémenté dans org.apache.FileUpload au travers de la classe DeferredFileOutputStream).

La méthode toMemFile permet de forcer le chargement en mémoire (c'est-à-dire en tant que tableau de bytes interne à l'objet file) du contenu d'un fichier dans le cas où celui-ci est un fichier physique.

Il n'est en principe pas nécessaire de faire ce genre d'opération dans un script normal, d'autant que le moteur se charge déjà de réaliser ce traitement lorsque cela est nécessaire, ce qui est le cas lorsqu'un fichier est conservé en tant qu'objet de session persistent. En effet, dans ce cas le fichier devra être accessible dans un thread ultérieur, mais le stockage en filesystem en permet pas de garantir que le fichier existera encore à ce moment (a fortiori si le fichier a été obtenu depuis un payload de requête, étant donné que ces derniers sont automatiquement nettoyés après traitement de la requête).

Syntaxe

$file.reencode( file [ , options ] )

Paramètres

file file / string
Fichier à convertir. Peut être passé sous forme de file ou au moyen de son path sous forme de string
options map

Map d'options. Les options reconnues sont:

delete boolean
Flag true/false indiquant de supprimer la version "physique" du fichier pour ne garder que la version "mémoire". Par défaut cette option est false.

Retour

Retourne un nouvel objet file

Exemple

Non disponible