C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 特定の文字を含む画像表示したい(asp)


(過去ログ 30 を表示中)

[トピック内 14 記事 (1 - 14 表示)]  << 0 >>

■14537 / inTopicNo.1)  特定の文字を含む画像表示したい(asp)
  
□投稿者/ スガ (1回)-(2008/02/21(Thu) 11:37:37)

分類:[レガシ ASP] 

2008/02/21(Thu) 13:23:34 編集(投稿者)

はじめて利用させていただきます。
初心者的な質問でしたら申し訳ありません。
早速ですが・・・

複数ある画像の中から、「A」を含む画像(A〜.jpgなど)だけ表示したい場合は
どのように記述したらよいのでしょうか(TT)

私の記述として

<%
aa = "image/"
bb = aa & "A" & "*" & ".img"
<img src="<% =aa %>">
%>

"*"の部分が違うのか、アバウトなことが元々できないのかわかりません。

すみません教えて頂けますでしょうか・・・
引用返信 編集キー/
■14539 / inTopicNo.2)  Re[1]: 特定の文字を含む画像表示したい(asp)
□投稿者/ スガ (2回)-(2008/02/21(Thu) 12:03:47)
2008/02/21(Thu) 16:17:37 編集(投稿者)

No14537 (スガ さん) に返信
> はじめて利用させていただきます。
> 初心者的な質問でしたら申し訳ありません。
> 早速ですが・・・

引用返信 編集キー/
■14540 / inTopicNo.3)  Re[1]: 特定の文字を含む画像表示したい(asp)
□投稿者/ やじゅ (177回)-(2008/02/21(Thu) 12:03:50)
No14537 (スガ さん) に返信
> 複数ある画像の中から、「A」を含む画像(A〜.jpgなど)だけ表示したい場合は
> どのように記述したらよいのでしょうか(TT)
>
> "*"の部分が違うのか、アバウトなことが元々できないのかわかりません。
>

ワイルドカード("*")を使って画像ファイルの一覧を列挙し、
その列挙されたファイル名を配列に格納し、
ループを使って処理する必要があります。

NET Framework 2.0以降
http://dobon.net/vb/dotnet/file/getfiles.html
引用返信 編集キー/
■14542 / inTopicNo.4)  Re[2]: 特定の文字を含む画像表示したい(asp)
□投稿者/ スガ (3回)-(2008/02/21(Thu) 12:14:50)
No14540 (やじゅ さん) に返信
> ■No14537 (スガ さん) に返信

>
> ワイルドカード("*")を使って画像ファイルの一覧を列挙し、
> その列挙されたファイル名を配列に格納し、
> ループを使って処理する必要があります。
>
> NET Framework 2.0以降
> http://dobon.net/vb/dotnet/file/getfiles.html

やじゅさん ありがとうございました。
早速試してみます☆
引用返信 編集キー/
■14543 / inTopicNo.5)  Re[1]: 特定の文字を含む画像表示したい(asp)
□投稿者/ 魔界の仮面弁士 (642回)-(2008/02/21(Thu) 12:33:31)
No14537 (スガ さん) に返信
> 特定の文字を含む画像表示したい(asp)
ASP.NET ではなく、レガシーの ASP なのですね?

> <%
>  aa = "image/"
>  bb = aa & "A" & "*" & ".img"
>  <img src="<% =aa %>">
> %>
これって、そもそも構文エラーになるような…。

サーバ上にある A*.img を列挙したいのであれば、こうかな。
(拡張子は、img で良いのですね?)

Set FSO = Server.CreateObject("Scripting.FileSystemObject")
For Each F In FSO.GetFolder(strFolderName).Files
  If LCase(Left(F.Name, 1)) = "a" And LCase(Right(F.Name, 4)) = ".img" Then
    Response.Write "<img src='" & Server.HTMLEncode(F.Name)) & "'>"
  End If
Next

引用返信 編集キー/
■14545 / inTopicNo.6)  Re[2]: 特定の文字を含む画像表示したい(asp)
□投稿者/ スガ (4回)-(2008/02/21(Thu) 12:43:21)
No14543 (魔界の仮面弁士 さん) に返信
> ■No14537 (スガ さん) に返信
>>特定の文字を含む画像表示したい(asp)
> ASP.NET ではなく、レガシーの ASP なのですね?
>
>><%
>> aa = "image/"
>> bb = aa & "A" & "*" & ".img"
>> <img src="<% =aa %>">
>>%>
> これって、そもそも構文エラーになるような…。
>
> サーバ上にある A*.img を列挙したいのであれば、こうかな。
> (拡張子は、img で良いのですね?)
>
> Set FSO = Server.CreateObject("Scripting.FileSystemObject")
> For Each F In FSO.GetFolder(strFolderName).Files
> If LCase(Left(F.Name, 1)) = "a" And LCase(Right(F.Name, 4)) = ".img" Then
> Response.Write "<img src='" & Server.HTMLEncode(F.Name)) & "'>"
> End If
> Next

ごめんなさい。レガシーですね・・・
まだまだ初心者ですみません。
ご記述頂いたソースに
[strFolderName]に画像のあるパスを入れたらよいってことですか??
重ね重ねスミマセン・・・
引用返信 編集キー/
■14546 / inTopicNo.7)  Re[3]: 特定の文字を含む画像表示したい(asp)
□投稿者/ 魔界の仮面弁士 (643回)-(2008/02/21(Thu) 13:18:20)
2008/02/21(Thu) 16:28:25 編集(投稿者)

No14545 (スガ さん) に返信
> [strFolderName]に画像のあるパスを入れたらよいってことですか??
画像が、"http://server/sample/image/abc.img" というパスで、
asp が、"http://server/sample/test.asp" というパスであるならば、
 strFolderName = Server.MapPath("image")
としておいて、ループ中では
  Response.Write "<img src='image/" & Server.HTMLEncode(F.Name)) & "'>"
のようになります。
引用返信 編集キー/
■14547 / inTopicNo.8)  Re[3]: 特定の文字を含む画像表示したい(asp)
□投稿者/ Mr.T (182回)-(2008/02/21(Thu) 13:28:00)
Mr.Tです、こんにちは。

>>Set FSO = Server.CreateObject("Scripting.FileSystemObject")
>>For Each F In FSO.GetFolder(strFolderName).Files
>> If LCase(Left(F.Name, 1)) = "a" And LCase(Right(F.Name, 4)) = ".img" Then
>> Response.Write "<img src='" & Server.HTMLEncode(F.Name)) & "'>"
>> End If
>>Next
>
> ごめんなさい。レガシーですね・・・
> まだまだ初心者ですみません。
> ご記述頂いたソースに
> [strFolderName]に画像のあるパスを入れたらよいってことですか??
> 重ね重ねスミマセン・・・


****.jpgは、
絶対指定であれば
"http://hogehoge.com/image/Hogeeee.jpg"

相対指定であれば
"/Image/Hogeee.jpg"
になるでしょうね。

注意する必要があるのは、そのフォルダが、どういうマッピングをされているか
によってURLの表記が違ってきます。

http://hogehoge.com/Image/Hogeeee.jpg
だけど、
ディスク上では、d:\ASP\Image\Hogeeee.jpgになるかもしれません。





引用返信 編集キー/
■14548 / inTopicNo.9)  Re[1]: 特定の文字を含む画像表示したい(asp)
□投稿者/ スガ (6回)-(2008/02/21(Thu) 14:04:18)
2008/02/21(Thu) 16:16:20 編集(投稿者)
No14537 (スガ さん) に返信
> 2008/02/21(Thu) 13:23:34 編集(投稿者)
>
無事解決しました。
やじゅさん
魔界の仮面弁士さん
Mr.Tさん

ご丁寧に教えていただきまして
ありがとうございました。
引用返信 編集キー/
■14553 / inTopicNo.10)  Re[1]: 特定の文字を含む画像表示したい(asp)
□投稿者/ スガ (7回)-(2008/02/21(Thu) 16:13:54)
2008/02/21(Thu) 16:15:52 編集(投稿者)
No14537 (スガ さん) に返信
> 2008/02/21(Thu) 13:23:34 編集(投稿者)

先程は皆様ありがとうございました。
実は先程の続きというか、発展系なのですが・・・
よろしくお願いします。

<%
ID = 8011231
aa= ID
For Each F In FSO.GetFolder(strFolderName).Files
If LCase(Left(F.Name, 7)) = aa And LCase(Right(F.Name, 4)) = ".jpg" Then
  Response.Write "<img src='image/" & Server.HTMLEncode(F.Name) & "'>"
End If
Next
%>

先程頂いたソースの変形なのですが
LCase(Left(F.Name, 1)) = "A"
 ↓
「"A"」の部分を代入式にしたい場合、上記の様に
ID = 8011231
aa = ID
LCase(Left(F.Name, 7)) = aa

色々試してみたのですが、撃沈しました・・・
ご教授の程、よろしくお願い致しますmm(__ )
引用返信 編集キー/
■14558 / inTopicNo.11)  Re[2]: 特定の文字を含む画像表示したい(asp)
□投稿者/ 魔界の仮面弁士 (644回)-(2008/02/21(Thu) 16:36:44)
No14553 (スガ さん) に返信
> LCase(Left(F.Name, 1)) = "A"
>  ↓
> 「"A"」の部分を代入式にしたい場合、上記の様に
> ID = 8011231
> aa = ID
これって、ID と aa が同じ内容になりますが、あえてそうしているのでしょうか?
また、ID = "8011231" ではなく、ID = 8011231 にしているのは、何故でしょうか?

> LCase(Left(F.Name, 7)) = aa
> 色々試してみたのですが、撃沈しました・・・
まずは、「撃沈」した理由を調べてみましょう。

コーディングミスで、意図しないデータを渡してしまっているのか、それとも、
データには問題が無いはずなのに、期待動作しないのか…といった所までは検証できますよね。

たとえばループ処理の中で、If 文に入る直前に
 Response.Write "<p>aa=" & aa & "<BR>"
 Response.Write "F.Name=" & F.Name & "<BR>"
 Response.Write "Left(F.Name, 7))=" & Left(F.Name, 7)) & "</p>"
などを実行し、どのような値が渡されているのかを確認してみてください。
それらの値は、期待通りの内容になっているでしょうか?
引用返信 編集キー/
■14559 / inTopicNo.12)  Re[2]: 特定の文字を含む画像表示したい(asp)
□投稿者/ Mr.T (183回)-(2008/02/21(Thu) 16:42:58)
Mr.Tです、こんにちは。

> ID = 8011231
> aa= ID
本題とは関係ないですが、この代入は、意味あります?

> 先程頂いたソースの変形なのですが
> LCase(Left(F.Name, 1)) = "A"
>  ↓
> 「"A"」の部分を代入式にしたい場合、上記の様に
> ID = 8011231
> aa = ID
> LCase(Left(F.Name, 7)) = aa
>
> 色々試してみたのですが、撃沈しました・・・

撃沈とは、どういう現象ですか?
Left(F.Name,7)でファイル名の先頭7文字が取得できますが、それが
きちんととれているか確認できませんか?
本当に"8011231"という文字がファイル名の先頭にあるのですか?




引用返信 編集キー/
■14560 / inTopicNo.13)  Re[3]: 特定の文字を含む画像表示したい(asp)
□投稿者/ Mr.T (184回)-(2008/02/21(Thu) 16:47:00)
魔界の仮面弁士さんとかぶりまくり...

ちなみに、もし先頭7文字が本当に数字だけで構成されているのであれば、
LCaseは必要ないでしょう。
(大文字、小文字がないから)

引用返信 編集キー/
■14562 / inTopicNo.14)  Re[2]: 特定の文字を含む画像表示したい(asp)
□投稿者/ スガ (8回)-(2008/02/21(Thu) 17:17:54)
No14553 (スガ さん) に返信
> 2008/02/21(Thu) 16:15:52 編集(投稿者)
> ■No14537 (スガ さん) に返信
>>2008/02/21(Thu) 13:23:34 編集(投稿者)
>

Nr.Tさん
魔界の仮面弁士さん

早速ありがとうございましたm(TT)m

早速試してみたところ、期待値が返ってきてませんでした・・・
期待値の確認方法にも気付けず、何が悪いのか分からず沈没していってました・・・

aa=ID の理由として、最終的には
aa=ID &"_1" と付け加える必要があった為です(これがダメな原因の1つだったのですが。。)

最終的には

aa= ID & "_1"
 For Each F In FSO.GetFolder(strFolderName).Files
  If Left(F.Name, 9) = aa And LCase(Right(F.Name, 4)) = ".jpg" Then
  Response.Write "<img src='image/" & Server.HTMLEncode(F.Name) & "'>"
  End If
Next

でできました☆☆☆

ありがとうございましたm(__)m

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -