CFFILE  
説明

サーバーファイルとの操作を管理します。

次のセクションでは、cffile タグのアクションについて説明します。

  • 127ページのcffile action = "append"
  • 129ページのcffile action = "copy"
  • 131ページのcffile action = "delete"
  • 132ページのcffile action = "move"
  • 134ページのcffile action = "read"
  • 136ページのcffile action = "readBinary"
  • 137ページのcffile action = "rename"
  • 139ページのcffile action = "upload"
  • 142ページのcffile action = "write"
メモ: このタグを実行するには、ColdFusion Administrator でタグを有効にする必要があります。詳細については、『ColdFusion MX の設定と管理』 を参照してください。

複数のカスタマが使用するサーバーで ColdFusion アプリケーションを実行する場合、アップロード可能または cffile で操作できるファイルについて、セキュリティを考慮する必要があります。詳細については、『ColdFusion MX の設定と管理』 を参照してください。

 
カテゴリ

ファイル管理タグ

 
シンタックス

タグのシンタックスは action 属性値によって異なります。それぞれの属性値のセクションを参照してください。

  • cffile action = "append"
  • cffile action = "copy"
  • cffile action = "delete"
  • cffile action = "move"
  • cffile action = "read"
  • cffile action = "readBinary"
  • cffile action = "rename"
  • cffile action = "upload"
  • cffile action = "write"
 
関連項目

cfdirectory

 
ヒストリ

ColdFusion MX 7: result 属性が追加されました。この属性では、結果パラメータを受け取る代替変数を指定することができます。action = "upload" アクションの場合に使用します。

ColdFusion MX 6.1:

  • ファイルパスの必要条件が変更されました。絶対パスを指定しなかった場合は、GetTempDirectory 関数から返される ColdFusion のテンポラリディレクトリを基準とした相対パスになります。
  • action="read" の動作が変更されました。BOM (Byte Order Mark) で始まるファイルの場合は、ColdFusion がそれを使って文字エンコードを判別します。
  • action="upload" nameConflict="MakeUnique" の動作が変更されました。ColdFusion はファイル名の最後に増分番号を付加することで、固有の名前を作成します (1 番めのファイルには 1 を付け、2 番めのファイルには 2 を付ける、という具合です)。ColdFusion MX では、各ファイルの名前に "1" を付加することで固有の名前を作成していました (つまり、1、11、111、という具合です)。

ColdFusion MX:

  • パス内のスラッシュの使い方が変更されました。UNIX システムでも Windows システムでも、パス内にスラッシュ (/) または円記号 () を使用することができます。
  • ファイル階層の必要条件が変更されました。このタグで操作するファイルやディレクトリを、Web サーバーのドキュメントディレクトリのルートの下に置く必要はありません。
  • destination 属性のディレクトリパスの必要条件が変更されました。destination 属性で指定するディレクトリパスには、円記号を付ける必要はありません。
  • attributes 属性の system 値が使用禁止になりました。
  • attributes 属性の temporary 値が使用禁止になりました。ColdFusion MX では、これは normal と同義です。このタグは、これ以降のリリースでは機能しない可能性があります。
  • action 属性の read、write、append、move オプションが変更されました。これらのオプションは、charset という新しい属性をサポートします。
  • attributes 属性の archive 値は現在使われておらず、効果はありません。
 
<!--- この例では、CFFILE を使用してファイルの書き込み、読み込み、更新、および削除を行う方法を説明します。
この例は参照専用です。 --->
<!--- 
<cfif IsDefined("form.formsubmit") is "Yes"> 
   <!--- フォームが送信されたため、ここでアクションを実行します。 ---> 
   <cfif form.action is "new"> 
      <!--- 新しいファイルを作成 ---> 
      <cffile          action="Write" 
         file="#GetTempDirectory()#foobar.txt"
         output="#form.the_text#"> 
   </cfif> 
   <cfif form.action is "read"> 
      <!--- 既存のファイルを読み込み ---> 
      <cffile          action="Read" 
            file="#GetTempDirectory()#foobar.txt"
            variable="readText"> 
   </cfif> 

   <cfif form.action is "add"> 
      <!--- 既存のファイルを更新 ---> 
      <cffile          action="Append" 
         file="#GetTempDirectory()#foobar.txt"
         output="#form.the_text#"> 
   </cfif> 

   <cfif form.action is "delete"> 
      <!--- 既存のファイルを削除 ---> 
      <cffile       action="Delete" 
         file="#GetTempDirectory()#foobar.txt"> 
   </cfif> 
</cfif> 
<!--- いくつかの変数を設定します。 ---> 
<cfparam    name="fileExists"    default="no"> 
<cfparam name="readText" default=""> 
<!--- 最初に、あらかじめ用意したファイルがあるかどうかを確認します。 ---> 
<cfif FileExists("#GetTempDirectory()#foobar.txt") is "Yes"> 
   <cfset fileExists="yes"> 
</cfif> 
<!--- ここで、この例を実行するフォームを作成します。 ---> 
<form action="index.cfm" method="POST"> 
<h4>ファイルに挿入するテキストを入力します。</h4> <p>
<cfif fileExists is "yes"> 
   <p>ファイル foobar.txt は <cfoutput>#GetTempDirectory()#</cfoutput> に存在します。 
   このファイルに追加したり、このファイルから読み取ったり、ファイルを削除したりすることができます。</p>
</cfif> 
<!--- フォームから読み取る場合、その情報をテキストエリアに表示します。 ---> 
<textarea name="the_text" cols="40" rows="5"> 
   <cfif readText is not ""> 
      <cfoutput>#readText#</cfoutput> 
   </cfif></textarea> 
<!--- ファイルが存在するかどうかに応じて、アクションを選択します。 ---> 
<select name="action"> 
<cfif fileExists is "no"> 
   <option value="new">新しいファイルを作成 
</cfif> 
<cfif fileExists is "yes"> 
   <option value="add">既存のファイルに追加 
   <option value="delete">ファイルを削除 
   <option value="read">既存のファイルを読み込み 
</cfif> 
</select> 
<input type="Hidden" name="formsubmit" value="yes"> 
<input type="Submit" name="" value="変更"> 
</form> --->