CFFILE ACTION = "READ"  
説明

サーバー上のテキストファイルを読み取ります。ファイルは、ページ内で利用できるダイナミックなローカル変数内に読み込まれます。例 :

  • テキストファイルを読み取り、そのファイルの内容をデータベースに挿入します。
  • テキストファイルを読み取り、検索置換機能を使用してその内容を修正します。
メモ: このアクションによって、ファイルがローカル Variables スコープ内の変数に読み込まれます。サーバーがダウンするおそれがあるため、ログなどの大きなファイルには使用しないでください。
 
シンタックス
<cffile
   action = "read"
   file = "full_path_name"
   variable = "var_name"
   charset = "charset_option" >
 
関連項目

cfdirectory

 
ヒストリ

メインの cffile タグのページの「ヒストリ」を参照してください。

 
使用方法

次の例では、ファイル message.txt の内容に対して Message という名前の変数が作成されます。

<cffile          action = "read" 
file = "c:webmessage.txt" 
variable = "Message">

これにより、変数 Message をページ内で使用できます。たとえば、次のようにして最終的な Web ページに "message.txt" ファイルの内容を表示できます。

<cfoutput>#Message#</cfoutput>

ColdFusion では、テキストファイルの内容を操作するための関数がサポートされています。また、cffile action = "read" オペレーションで作成された変数を ArrayToList 関数や ListToArray 関数で使用することもできます。

メモ: Latin-1 文字セットの Windows Cp1252 (windows-1252) エンコードでエンコードされたファイルを、デフォルトの文字エンコードが Cp1252 であるシステム上で cffile タグを使って読み取る場合、そのファイル内に 16 進数の 8x ~ 9x の範囲でエンコードされた文字が含まれているときには、charset="windows-1252" 属性を指定する必要があります (これはデフォルトのエンコードですが、指定が必要です)。そうしないと、16 進数の 8x ~ 9x の範囲にある一部の文字が正しくマップされず、正しく表示されません。
ACTION  
  必須
 

このタグが実行するファイル操作のタイプです。

FILE  
  必須
 

読み取るファイルのパス名です。

絶対パス (ドライブ文字とコロン、あるいはスラッシュまたは円記号から始まるパス) を指定しなかった場合は、GetTempDirectory 関数から返される ColdFusion テンポラリディレクトリを基準とする相対パスになります。

VARIABLE  
  必須
 

テキストファイルの内容が入る変数の名前です。

CHARSET  
  オプション
 
Default value: "文字エンコードは、そのファイルに BOM が存在する場合は BOM により、無い場合は JVM のデフォルトファイル文字セットにより決定します。"

ファイルコンテンツをエンコードする文字エンコードを指定します。一般的に使用される値を次に示します。

  • utf-8
  • iso-8859-1
  • windows-1252
  • us-ascii
  • shift_jis
  • iso-2022-jp
  • euc-jp
  • euc-kr
  • big5
  • euc-cn
  • utf-16

ファイルが BOM (Byte Order Mark) で始まる場合に、この属性を別の文字エンコードに設定すると、エラーになります。

文字エンコードの詳細については、www.w3.org/International/O-charset.html を参照してください。