[リストへもどる]
一括表示

投稿時間:2002/11/18(Mon) 13:57
投稿者名:Mac
Eメール:
URL :
タイトル:
HTMLファイルの読み書き
はじめましてMacと申します。
まだVB勉強し始めて数ヶ月なのですがちょっとわからないことがあるので質問させて
いただきます。
txtやcsvの読み書きはできるのですがhtmlってVBで読み書きすることができる
のでしょうか?
List.htmlの中から"ABC"というキーワードの行を抜き出して他のhtmlに書き出す。
というような動作です。
htmlのソースを読んでそのtxtを処理するという形になってしまうのかなぁ。
それだと改行がなかったらだめですねぇ・・・

もし何か良い方法があるのでしたら教えてくださいませ。

投稿時間:2002/11/18(Mon) 16:57
投稿者名:nobu
Eメール:
URL :
タイトル:
Re: HTMLファイルの読み書き
> txtやcsvの読み書きはできるのですがhtmlってVBで読み書きすることができる
> のでしょうか?

勿論できますよ。

> List.htmlの中から"ABC"というキーワードの行を抜き出して他のhtmlに書き出す。
> というような動作です。
> htmlのソースを読んでそのtxtを処理するという形になってしまうのかなぁ。

そうですね、

> それだと改行がなかったらだめですねぇ・・・

普通htmlファイルではVBコードで言うとvbcrのみでvbcrlfに
なっていない事が多いようですが下記のようにすればOKです。
1行毎に改行コードが入りますので後は普通のtxtファイルと同じ感覚で処理出来ます。
VB6で無いとReplece関数が無いのでVB5では工夫が必要でしょうが。
例えば下記のように....。

Open SaveFileName For Input As #f_i
Open SaveFileName & "2" For Output As #f_o

Do
    Line Input #f_i, tmp
    tmp = Replace$(tmp, vbLf, vbCrLf)
    Print #f_o, tmp
Loop Until EOF(f_i)
Close #f_i
Close #f_o

投稿時間:2002/11/18(Mon) 17:41
投稿者名:Mac
Eメール:
URL :
タイトル:
Re^2: HTMLファイルの読み書き
ありがとうございます!
トライしてみます。
壁にぶつかったらまたきます(^^;

投稿時間:2002/11/21(Thu) 14:59
投稿者名:Mac
Eメール:
URL :
タイトル:
追加質問 壁にぶちあたりました!
予想通り壁にあたりました・・・

読もうとしているhtmlが日本語EUCらしく文字化けしてしまってます。
日本語JISにエンコードしてから読むことってできるのでしょうか?

投稿時間:2002/11/21(Thu) 15:20
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: 追加質問 壁にぶちあたりました!
> 読もうとしているhtmlが日本語EUCらしく文字化けしてしまってます。
Charsetプロパティを"euc-jp"に設定したStreamオブジェクトを使えば、
問題なく読む事ができると思います。

もしくはMSHTML.DLLを使って、htmlファイルからタグの抽出や修正等を行うこともできます。


> 日本語JISにエンコードしてから読むことってできるのでしょうか?
日本語JIS、と言っても、幾つか種類がありますが。。
http://www.ffortune.net/comp/develop/data/nihogojis.htm

Streamオブジェクトで変換できる文字コードは幾つかありますが、
標準でサポートされている物の中で、日本語を表示できるCharsetとなると、
"euc-jp" "ISO-2022-JP" "Shift_JIS" "UTF-8" "UTF-7" "Unicode" などですね。

投稿時間:2002/11/22(Fri) 11:41
投稿者名:Mac
Eメール:
URL :
タイトル:
ありがとうございます!が・・・
ありがとうございます。なんとかやってみようと思ったのですが・・・
やったことのないことなのでオープンすることすらできませんでした。

Streamのサンプルも見たのですけどいまいちわからなかったのでまたきました。
URLから直接見れるみたいなのですが。
使い方を教えていただきたいm(_)m

    Dim s      As Stream
    Dim Record As String
  
    Set s = New Stream
    
    s.Open "URL=http://www.bcap.co.jp/hanafusa/index.html"
    Record = s.ReadText
'        s.Charset = "ascii"
'        s.Type = adTypeText

投稿時間:2002/11/22(Fri) 12:44
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
LoadFromFileメソッドを試してください
> URLから直接見れるみたいなのですが。
とりあえず、その「URLを直接指定する方法」は忘れてください。
特定の条件を満たしていないと使えないので。

# もし、URLを指定する方法について知りたい場合は、
# 「Microsoft OLE DB Provider for Internet Publishing」
# というOLE DBプロバイダについて調査してみてください。

> 使い方を教えていただきたいm(_)m
URLではなく、テキストファイルを指定してみてください。

    s.Open
    s.Charset = "euc-jp"
    s.LoadFromFile FileName

なお、Charsetで指定できる値は、レジストリの以下の項目を参照してください。
HKEY_CLASSES_ROOT\MIME\Database\Charset\