注意:このタグの属性は attributeCollection 属性で指定でき、その値は構造体になります。attributeCollection 属性で構造体の名前を指定し、タグの属性名を構造体のキーとして使用します。

説明

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

  • テキストファイルを読み取り、そのファイルの内容をデータベースに挿入します。
  • テキストファイルを読み取り、検索置換機能を使用してその内容を修正します。

    注意:このアクションによって、ファイルがローカル Variables スコープ内の変数に読み込まれます。サーバーがダウンするおそれがあるため、ログなどの大きなファイルには使用しないでください。

シンタックス

<cffile
action = "read"
file = "full pathname"
variable = "variable name"
charset = "character set option">

関連項目

cfdirectory

履歴

メインの cffile タグのページの「履歴」セクションを参照してください。

属性

属性

必須/オプション

デフォルト

説明

action

必須

 

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

file

必須

 

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

variable

必須

 

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

charset

オプション

文字エンコードは、そのファイルに 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 を参照してください。

使用方法

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

<cffile action = "read"
file = "c:\web\message.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 の範囲にある一部の文字が正しくマップされず、正しく表示されません。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー