目次

テキストファイルに文字を書き込む

今回は、 Photoshop の JavaScript で、テキストファイルに文字を書き込んでみたいと思います。以前の投稿で、ドキュメントの名前、解像度などを取得してみましたが、取得した情報をファイルに記録しておけると、便利な時があるかもしれません。

今回は、以下のようなファイルオブジェクトの関数を使用します。

コンストラクタ
ファイルオブジェクトを作成する。
open 関数
テキストファイルを開く。今回は、「書き込み」モードで開く。
close 関数
テキストファイルを閉じる。
write 関数
テキストファイルに文字を書き込む。
writeln 関数
テキストファイルに文字と改行を書き込む。行単位で書き込む。

ファイルオブジェクトのことは、以下のリンクの PDF の 243 ページ「 6 Using File and Folder Objects」に書いてありました。

Adobe CS2 Photoshop JavaScript Scripting Reference - JavaScriptReferenceGuide.pdf
http://wwwimages.adobe.com/content/dam/acom/en/devnet/photoshop/scripting/JavaScriptReferenceGuide.pdf

目次まで戻る

1 文字ずつ書き込む

以下の、 jsx を実行してみると、「newfile.txt」が作成されて、文字の書き込みがされていました。ファイルの文字コードは「SHIFT-JIS」、改行コードは「CR+LF」でした。「あいう」の日本語の文字もそのまま出力されていました。

ソースコード:file-object-write-function.jsx

var fileObj = new File( "C:/Users/xxx/xxx/xxx/003607/newfile.txt" ); //ファイルオブジェクト作成。 xxx の部分は伏せ字です。
fileObj.open( "w" ); //ファイルを「書き込み」モードで開く
fileObj.write( "ABC" ); //文字書き込み
fileObj.write( "あいう" ); //文字書き込み
fileObj.close(); //ファイルを閉じる
fileObj = null; //変数を空にする。

処理結果:newfile.txt

ABCあいう

目次まで戻る

1 行ずつ書き込む

次は、 writeln 関数を使用して、 1 行ずつ文字を書き込んでみたいと思います。

今回は、ファイルオブジェクト作成のパス指定に、チルダ( ~ の記号)を使用しています。チルダは、「C:\Users\ユーザー名」を表してくれるようです。

以下の jsx を実行してみると、「C:\Users\ユーザー名」フォルダに「newfile.txt」が作成されました。ファイルのパスは「C:\Users\ユーザー名\newfile.txt」になります。

ソースコード:file-object-writeln-function.jsx

var fileObj = new File( "~/newfile.txt" ); //ファイルオブジェクト作成。チルダ(~)は C:\Users\xxx の意味になるようです。 xxx には Windows のユーザー名が入ります。
fileObj.open("w"); //ファイルが存在しない場合は、空のファイルが作成される。
fileObj.writeln("ABC"); //文字と改行書き込み。
fileObj.writeln("あいう"); //文字と改行書き込み。
fileObj.close(); //ファイルを閉じる。
fileObj = null; //変数にオブジェクトが入っている場合は、 null にするようです。

処理結果:newfile.txt

ABC
あいう

目次まで戻る

テスト環境

  • Adobe Photoshop CS2
  • Windows 10

以上、閲覧ありがとうございました。

目次まで戻る

同じカテゴリの投稿(Photoshop)

前後の投稿