• ベストアンサー

ASPで配列を作る方法

yanmaaの回答

  • yanmaa
  • ベストアンサー率45% (207/457)
回答No.1

ASPという事はサーバサイドのVBScriptで書かれていると思いますが Dem  配列名() で宣言しておき ReDim Preserve 配列名(配列の大きさ) で配列の大きさを変える(Preserveを指定すると配列の中身を初期化しない) 詳しくは参考URLにて確認願います。

参考URL:
http://asia.microsoft.com/japan/developer/scripting/default.asp
adrie
質問者

補足

回答ありがとうございます。 上記のお答えは分かるのですが、どこを調べても動的配列にはReDimと書いて ありますよね。 そこも私は疑問なのですが、今回のような場合、 dim 配列名a 配列名a=Array(filesコレクション名.Count) としたら、redimは必要なくなるような気がするのですが、ダメなのでしょうか?

関連するQ&A

  • ASPでサーバーサイドの配列をクライアントサイドへ引渡し

    表記の件の実装方法が分からず、非常に困っています。 どなたかご教授願います。 ■開発環境   ASP(VBScript) ■内容   サーバーサイドでDBから取得した内容を   配列に保持しているのですが、その内容をクライアントサイド処理で   取得したいのですが、どのようにすればいいのか分かりません。   サーバーサイドの配列名 arrSvr() とした場合、   "<%=arrSvr(1)%>"などとすれば取得は出来るのですが、   配列のインデックスを動的に変更して取得したいのですがうまく行きません。   "<%=arrSvr(" & i & ")%>"などとしてもエラーとなってしましますし、   クライアントサイドの配列に一度配列ごと突っ込もうとして   arrClt = "<%=arrSvr%>" のようにしてもダメでした。   どなたか詳しい方、どうぞよろしくお願いします。

  • 配列のソートについて

    Array(    [0] => ../images/19991221.gif    [1] => ../images/19980801.png    [2] => ../2007/20070402.jpg    [3] => ../2009/20091231.jpg    [4] => ../../images/hoge/19950101.jpg    [5] => ../piyo/19951231.jpg ) 配列(階層の異なるパス)を、拡張子を除いたファイル名「20091231、20070402…」で、配列のまま、降順ソートしたいのですが、どうすればよいでしょうか? ファイル名だけを並べたいわけではなく、 ファイル名降順で、配列をソートしたいです。 ※このパスは後で使う予定のため

    • ベストアンサー
    • PHP
  • [ASP+SQLserver]列名の取得・・・

    こんにちわ!皆さん!! 今日は、ASPで列名を取得する方法が見つからず悩んでします。 例えば Syohin = rsSyohinMaster("商品名") とすれば、テーブル内の「商品名」という列名に入っているデータをSyohinに格納できますよね? そうではなくて・・・ Retsumei = rsSyohinMaster(1) とかやったら、 Retsumei に 「()」内で指定した番目にある列名を(例えば:商品名)格納 したいんです! そういうコマンドないですか? 実際は指定されたテーブルの列名を配列に一気に取り込む処理を考えています。 いかがでしょうか? 宜しくお願い致します!

  • 配列どうしで同じ値があれば取り除きたいのですが

    ディレクトリtest内に存在するファイル名(例えば、file1、file2、....)を調べ、 同じものが存在しなければある場所からcURLにてデータを取得、という事をしようと考えております。 ここでは前もって$namesにその取得しようとしているデータ名が配列にて入っているとします。 そこでManualにあった通り、(簡略化していますが)以下のように書いたのですが、 この方法では、 1. $entry、つまり存在するファイルの数だけwhile()によって回されその度にget_text()が呼ばれて重複してしまう 2. $entryによってwhile()で回されている際、$entry=file1の時はfile1は取得されないが、 このwhile()の際に存在するはずのfile2まで取得プロセスが働くことになる 、と思います。 このような場合、どのようなスクリプトを書けば宜しいのでしょうか? アドバイスを頂ければと思います。 宜しくお願い致します。 define('DS', DIRECTORY_SEPARATOR); //簡易的なため$urlsは$names[$d]に沿ったurl情報を格納しているとします if ($handle = opendir($directory_path)) { $d = 0; while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != "..") { if (!file_exists($directory_path . DS . $names[$d] . ".txt")) //またはif($entry == $directory_path . DS . $names[$d] . ".txt") { $text = get_text($urls); //<-存在しないテキストを新たに取得するcURL自己関数 } } } $d++; } closedir($handle); $names内のデータ名と、test内のファイル名を検証し、同じものがあれば配列$names内から削除 というような事も考えましたが、 foreach()にて$namesないから削除していくやり方では、一般配列の整合性が崩れ foreach()の繰り返し番号によっては消えない場合もあるのではないかと思い、分かりませんでした。

    • ベストアンサー
    • PHP
  • ファイルの一覧を取得して配列に入れるには(VB2005)

    VisualBasic2005でプログラミングの勉強を始めましたが、配列のところで躓いてしまいました。 現在やりたいことは、ListBoxとDataGridViewにそれぞれ取得したファイルのファイル名を一覧を表示し、項目クリックでそのファイルを開くことです。(DataGridViewのほうは、ファイルの一覧だけでなく、項目を分けてパスやファイルサイズなども表示させたいと思います)。 まずListBoxのほうですが、検索して次のような方法が見つかりました。 ListBox1.DataSource = _ My.Computer.FileSystem.GetFiles("パス",FileIO.SearchOption.SearchTopLevelOnly,"*.拡張子") そのままコピーして利用してみたのですが、直接リストボックスに一覧を取得し、パスも含めた文字列が表示されてしまいました。リストボックスにはパスと拡張子を除いたファイル名だけを一覧表示したいです。それで、各文字列を操作するためにはまず取得したファイル一覧を配列かコレクションに格納しなければならないと思うのですが、この方法がどうしてもわかりません(また、配列とコレクションではどちらが相応しいでしょうか)。 また、DataGridViewでもパスやサイズも含めた一覧を表示し、同様にクリックで開けるようにしたいと思います。この場合も、まず多次元配列に検索結果を入れると思うのですが、データを入れた配列から、DataGridViewに表示させる方法も合わせて教えていただきたく思います。 以上のことについて、アドバイスまたは方法をご教授ください<(_ _)> 検索していると、 DataGridView1.datasource = DataTable ListBox1.datasource = ~~~ などという例が多いのですが、DataTableやdatasourceと配列はどのような関係にあるのでしょうか?DataTableのデータを配列に入れたり、またその逆だったりは簡単に出来ないものでしょうか。 このあたりがどうも理解不足で、応用力もつけたいので、どのあたりを勉強すればよいのかも教えて頂けると助かります。初心者用の参考書と、逆引き大全500は一通り読んでみました。

  • asp.net コーディング方法

    asp.net初心者です。 あるコーディングをしたのですが、サーバーサイドでどう記述したらよいのかわからず悩んでいます。 内容は以下のとおりです。 TBLAから年をグループ化し降順に7年分取得します。 select TOP 7 YYYY from TBLA group by YYYY desc これをgridviewのヘッダーに表示したいのです。 gridviewの列は7列。例えば上記クエリで取得した値が 2012、2011、2010、2009、2008、2007、2006 だとすると gridviewのヘッダーは左から2006、2007、2008、2009、2010、2011、2012と 表示したいです。 ※取得した年は7年分あるとは限りません。 配列を使って下記のように考えたのですが、asp.netでの記述がわからず困っています。 記述方法、またはもっといい案があればご教授をお願いします。 <私の考えた案> (1)クエリにて年を取得 (2)配列に(1)の年を配列にセットする  arry(1)=2012 ~ arry(7)=2006 (3)for文にてヘッダーにセット yearcnt=(1)の件数  for i = yearcnt to 1 step -1 lblHeder1_(i).text=arry(i) next    ※ヘッダーのラベル名は1列目:「lblHeder1_1」、2列目:「lblHeder1_2」3列目:「lblHeder1_3」・・・と続きます。   lblHeder1_(i)の(i)を変数にする方法もわかりません。

  • ASP.NETで、配列は使えないのでしょうか?

    ASP.NETで、配列は使えないのでしょうか? IMAGEタグを、100個ほど使いたい状況です。 イメージタグのIDに、IMAGE1、IMAGE2などをしていするのではなく、IMAGE(i)のようにしたいのですが、変数宣言がうまくいきません。 Dim IMAGE() という書き方や、 Var IMAGE()などの書き方は試したのですが、うまくいきませんでした。 どのような書き方をすれば良いのでしょうか? よろしくお願いします。

  • フルパスからファイル名取得の方法

    指定したフォルダのフルパスを「bmpFiles」に入れているのですが、表示する時はファイル名のみの表示にしたくて「Path.GetFileName」を使用してファイル名を取得しようとしたのですが、「型'stringの1次元配列'の値を'string'に変換できません」というエラーが出てしまいます。 VBを始めたばかりでよく分からないのでアドバイスをお願いします。 Dim imageDir As String = fbd.SelectedPath ' 指定フォルダまでのディレクトリ Dim bmpFiles As String() = _ System.IO.Directory.GetFiles(imageDir, "*.bmp") 'フルパス Dim bmpFileName As String = _ Path.GetFileName(bmpFiles)  ←bmpFilesで上記エラー

  • ASPについて

    ASPの参考書をみながらサンプル通りに プログラムを入力し、PWSで実行したら以下のようなメッセージがでてきてしまいました。 また、いくつかのファイルをつくり関連付けようとしても どのファイルにも以下のメッセージが出てきてしまい 関連付けれません。何が原因なんでしょうか。教えてください。 [Microsoft][ODBC Driver Manager] データ ソース名および指定された既定のドライバが見つかりません。

  • [asp/vbs]FileExistsのパスの指定方法について教えて下

    [asp/vbs]FileExistsのパスの指定方法について教えて下さい。 下記のような記述をした場合、インターネット上にファイルは存在しているのに 「無し」と判断されてしまいます。("ファイルがありません"と表示される) 表示されるという事はasp自体は動いているのでしょうが、肝心のパスの設定が わからない状態です。 <%@ Language=VBScript %> -------中略------- <% Set objFso = Server.CreateObject("Scripting.FileSystemObject") If objFso.FileExists("image/test.jpg") Then Response.Write "ファイルが存在します" End If Response.Write "ファイルがありません" %> このaspファイルが置かれているディレクトリ上にtest.jpgを置き、 If objFso.FileExists("test.jpg") Then と記述しても、やはり"ファイルがありません"と表示されてしまいます…。 また、フルパス(http://www~~test.jpg)と表示しても駄目でした。 おそらく根本的な問題だとは思うのですが、 どのように表記したら良いか、教えて頂けると助かります。