2009年から仕事でMAYAを勉強。MAYAはデフォルトでは使い勝手が悪い。逆にスクリプトを覚えてカスタマイズするとかなり強力なツールになることがわかってきた。

物覚えが悪いので勉強したことはリマインダとしてココに書き留めるようにする。

2009年5月18日月曜日

【MEL】ファイルへの配列書き込み 2

(fopen、fprint、fwrite、fclose)

プログラマーから答えをもらっちゃったので(^^;)こっちにコピペしておく。for文で配列を変換しなくてもいいらしい。というか、配列を直接ファイルに書き込もうとするからイカン。for文中で$valにそのとき代入されているものを1つづつ追記するのが以下の構文。

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

★★★★文字列配列書き込み★★★★

{
string $str[] = { "aaa", "bbb", "ccc", "ddd" };
string $fname = "C:/onogu2/test.txt";

int $fid = `fopen $fname "w"`;

string $val;

  for( $val in $str )
  {
  $val+="\n";
  fprint $fid $val;
  }

fclose $fid;
}



★★★★文字列配列読み込み★★★★

{
string $str[];
string $fname = "C:/onogu2/test.txt";

int $fid = `fopen $fname "r"`;

string $val;
int $cnt = 0;

  for( $val = `fgetline $fid` ; size($val) > 0 ; $val = `fgetline $fid` )
  {
  $str[ $cnt ] = $val;
  $cnt++;
  }

  for( $val in $str )
  {
  print $val;
  }

fclose $fid;
}





0 件のコメント: