「武器を身につけよう」へ戻る | |||
3.保存したデータを読み込む |
![]() |
||
![]() |
![]() |
![]() |
![]() |
単純に 「2.座標データを保存しておく」 の反対のことをやります。2で作ったファイルのデータを使います。 考え方としては、FSOオブジェクトを使ってデータを変数に代入するだけです。但し保存した時と同じ順番で呼び出すのを忘れずに。 |
![]() |
![]() |
![]() |
![]() |
早速 「保存したデータを読み込む」 スクリプト作成に取り掛かりましょう。 それではいつもの通りFSOのインスタンスを作りましょう。 |
Topへ | ||
dim fso Set fso=CreateObject("Scripting.FileSystemObject") |
|||
あとで読み込むfileのPathを用意しておきましょう。(ここでは2で保存したファイルのPathになります。) 参考までに右図が「2.座標データを保存しておく」のスクリプト例で保存したデータです。 (描いた線形状によりデータの値は違っているはずです) |
![]() |
||
dim strPath strPath="c:\posData.txt" |
Topへ | ||
今回もOpenTextFileでTextStreamオブジェクトを取得します。 読み込みだけです。fileがない時は作成しません。 (Fileが無いということは2でファイルを作らなかった、パスが間違っている、削除された、のいずれかです) |
|||
dim objStream Set objStream=fso.OpenTextFile(strPath,1,false) |
|||
引数の説明はもういいですね。 データを保存した時WriteLineを使ったのでそれに対応する一行読み込み用のメソッドReadLineを使います。 受け取り用の変数も宣言して用意します。(ここでは開くデータの数が3つのポイントで3次元ということが既知という前提です) |
|||
dim AnchorPt(2,2) for i=0 to 2 for j=0 to 2 AnchorPt(i,j)=objStream.Readline() next next |
Topへ | ||
変数にファイルのデータを確保したのでファイルを閉じます。 |
|||
objStream.close() |
|||
ついでに必要なくなったインスタンスを開放しておきましょう。 |
|||
Set fso=nothing Set objStream=nothing |
|||
最後に,ついでなのでデータから閉じた線形状を作ってしまいましょう。 |
|||
XShade.StartPolygon(true) for i=0 to 2 XShade.AppendPoint AnchorPt(i,0),AnchorPt(i,1),AnchorPt(i,2) next XShade.FinishPolygon() |
|||
以上です。 右図は実行した結果です。 前項「2.座標データを保存しておく」 の例で保存した線形状が復元された事がわかります。 |
![]() |
||
まとめてみましょう |
|||
dim AnchorPt(2,2) dim strPath dim fso,objStream dim i,j strPath="c:\posData.txt" Set fso=CreateObject("Scripting.FileSystemObject") Set objStream=fso.OpenTextFile(strPath,1,false) for i=0 to 2 for j=0 to 2 AnchorPt(i,j)=objStream.Readline() next next objStream.close() Set fso=nothing Set objStream=nothing XShade.StartPolygon(true) for i=0 to 2 XShade.AppendPoint AnchorPt(i,0),AnchorPt(i,1),AnchorPt(i,2) next XShade.FinishPolygon() |
|||
|
|||
「武器を身につけよう」へ戻る | Topへ |