-PR-
解決済み

インターネット上のファイルサイズの調べ方

  • すぐに回答を!
  • 質問No.87185
  • 閲覧数393
  • ありがとう数5
  • 気になる数0
  • 回答数6
  • コメント数0

お礼率 77% (67/87)

インターネットでアクセスできるファイルのファイルサイズを調べたいのですが、
何か方法があるでしょうか?
例えば http://www.xxxtest.co.jp/test/index.html
ファイルサイズが知りたいのです。
また、ファイルの更新日も知る方法があるでしょうか?
よろしくお願いします。
通報する
  • 回答数6
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.4
レベル13

ベストアンサー率 59% (729/1235)

>できればHTML固有のお決まり事みたいのを抜きでの方がよいのです。

HTMLのヘッダではなくてHTTPのヘッダです

相手側のWebサーバーが対応していれば、Content-LengthやLast-Modifiedを
自動的に付けてくれます(LZHやTXTでも)
お礼コメント
y_an

お礼率 77% (67/87)

ご指摘ありがとうございます。
ちょっと違う方法ですが、できました。
今の所、ほとんどのサーバが対応しているみたいで、
問題なく取得できました。
ありがとうございました。
投稿日時 - 2001-06-12 11:15:23
-PR-
-PR-

その他の回答 (全5件)

  • 回答No.1
レベル13

ベストアンサー率 33% (427/1283)

 VBを使って事なの?
 VBのバージョンは?
 また、コントロールは使用していいの?
 ファイルサイズの取得のタイミングは?
  → 全部のデータを読み切った後では、簡単に出来ますが、読込む前は簡単には出来ません。

 それから...ね。
 ファイルサイズは、単純に、index.htmlのファイルサイズなのか? index.htmlを表示する為のデータサイズなのかによって実現方法が変わってきます。その当りは如何考えているのでしょうか?

 方法はありますが、上記条件により実現可能な方法と実現不可能な物があります。
 単純に言ってしまえば、VC等でコントロールを作成すれば、『表示する為のデータサイズ』以外はなんとかなると思います。
補足コメント
y_an

お礼率 77% (67/87)

言葉が足らなくてすいません。

特にバージョンは気にしていないです。
このバージョンならできないけど、
このバージョンであればこのコントロールや
あのDLL(APIも含む)をこのように使用すればできるとか
そんな感じで結構です。

特に、読み込んだりするのではなく、
ただ単純にindex.htmlのファイルサイズが知りたいです。
しいて言うなら、読み込む前に大きいか小さいかの判断をしたいのです。

ちなみにC系の言語はわからないので基本的にVBでのみで
お願いしたいのですが...。

お分かりでしたら、どうぞご教授お願いします。
投稿日時 - 2001-06-08 13:34:44


  • 回答No.2
レベル13

ベストアンサー率 59% (729/1235)

APIによる方法

ファイルサイズはHttpQueryInfoのHTTP_QUERY_CONTENT_LENGTHにより
得ることができます。
ただし、ヘッダにContent-Length:が定義されていることが条件です。

最終更新日は、ヘッダにLast-Modified:が定義されていれば、
HTTP_QUERY_LAST_MODIFIEDにより得ることができますが、ヘッダに
書いていないことが多いようです。
補足コメント
y_an

お礼率 77% (67/87)

これ場合、結局定義されていなければいけなくて、
さらには定義されていても、
本当に正しい値が入っているという保証もないんですよね?
(あんまりわかっていません。)
また、HTML形式以外のファイルには対応していないって事ですよね?
例えば、LZHとかTXTとか。
できればHTML固有のお決まり事みたいのを抜きでの方がよいのです。
っていっても、index.htmlなんていう例が良くなかったのですが...。
VBでいうFileLenみたいなのが理想なのです。

やっぱりないのでしょうか...。
投稿日時 - 2001-06-08 15:18:12
お礼コメント
y_an

お礼率 77% (67/87)

ありがとうございます。
こんな方法があったんですね。
投稿日時 - 2001-06-08 15:18:00
  • 回答No.3
レベル13

ベストアンサー率 46% (643/1383)

うーん、JavaScriptとかVB ScriptをHTMLに埋め込んでおいて、一旦Cookieにサイズとか更新日を落として、VBでそのCookieを読み込むとか…

あるいは、TELNETを呼び出して、HTTPサーバにアクセスするとか…

とりあえず思いついたことを書いてみました。
実際に試したわけではないですが、どちらの方法でもうまく行くような気はします。
補足コメント
y_an

お礼率 77% (67/87)

ちょっと意味がわかりませんです...。
もっと詳しくお願いします。
投稿日時 - 2001-06-08 16:20:36
  • 回答No.5
レベル13

ベストアンサー率 46% (643/1383)

>JavaScriptとかVB ScriptをHTMLに埋め込んでおいて
これは、不特定のHTMLではなく、自分とこのホームページの更新日やサイズを知るときに使えるんじゃないかというアイディアです。
HTML中にサイズ等を調べてCookieに書き出すJavaScriptを記述して、一度そのページを表示させます。すると、ローカルのHDD内にそのCookieが保存されるので、それを解析すればいいんじゃないかなぁ、と。

こっちは、Windows付属のTELNETっていう通信ソフトを使って、目的となるサイトに接続し、そのサーバにサイズなどを問い合わせるって方法ですね。
SHELLコマンドでTELNETを操作し、その実行結果をリダイレクトでファイルに落とし、そのファイルを解析すれば良いんじゃないかと。
TELNETやHTTPに関する知識は要りますが、プログラムの作成自体はそれほど複雑ではないように思います。

TELNETとHTTPについては、今月号の月間ASCII,日経WinPC,DOS/Vパワーレポートのどれかに載ってたと思います。(多分、月アス)
記憶の限りでは、その記事を読めば、必要なコマンドの類は網羅できると思います。(違ってたりして…)
お礼コメント
y_an

お礼率 77% (67/87)

自分の所だけっていうのはネックになりますね。
それとTELNETも使ったことはありますが、
インターネット系のでは使った事がありませんし、
できるだけ簡単な方がよいので...。
todo36さんの案で解決しましたのでとりあえずOKです。
2度も回答ありがとうございました。
投稿日時 - 2001-06-12 11:22:58
  • 回答No.6
レベル8

ベストアンサー率 60% (20/33)

Microsoft Internet Transfer Controlを使えばできます。

Dim strBuf As String
'バッファへデータ取り込み
strBuf = Inet1.OpenURL(strURL)

これで、指定したURLのファイルの内容が取得できます。
こんなんでいいんでしょうか?
補足コメント
y_an

お礼率 77% (67/87)

ヘルプを見てみたら、この方法だとファイルの内容が
取得できちゃうような感じでした。
この方法でも、ファイルのサイズを取得できるのでしょうか?
でも、とりあえず、todo36さんの方法で行きます。
投稿日時 - 2001-06-12 11:16:32
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


専門家があなたの悩みに回答!

-PR-

ピックアップ

-PR-
ページ先頭へ