2010年7月19日月曜日

【Javascript】scripting.filesystemobject

今日調べたことを残しておこうと思います。


やろうとしているのは、
ブラウザ上でボタン押下か何かをトリガーにして
タイムスタンプ機能を提供すること。

WindowsXP+IE7、ローカル上での動作だけを考えていますよ。

----------------------------------------------------------------

var fileName = "C:/js/test.txt";

//ファイルシステムオブジェクトを作る
var fsObj = new ActiveXObject("Scripting.FileSystemObject");

噂によると最上位オブジェクトで、
スクリプト全体で一個しか作れないとか何とか。


//ファイル作成
var fc = new CreateTextFile(fileName);

ファイルを作成出来ます。
どうやらtextstreamオブジェクトを返してくれるようなので、
このまま書き込みも出来ますが…。
部品化のことを考えるとそのあたりは分けたほうがいいのかな?知らん。

//テキストに追記
var fo = new OpenTextFile(fileName, true, ForAppending);

fo.Write("hello javascript");

fo.Close();

textstreamオブジェクトを返すらしい。

//テキスト読み込み
var fi = new OpenTextFile(fileName, true, ForReading);

while(!fi.AtEndOfText){
strs += fi.ReadLine();
}

fi.close();

return strs;

----------------------------------------------------------------

OpenSystemFileコントラスタの第2引数はファイルが無かった場合の処理らしい。

読み込みとか書き込み用のメソッドには
ReadLineとかWriteLineとか色々ある様子

このあたり使えると
csvファイルから動的にTABLEの表を作成出来たりするんだろうなー。

参考:
http://msdn.microsoft.com/ja-jp/library/cc428074.aspx

0 件のコメント:

コメントを投稿