ASP,VBSでAccessデータベース操作 他のホームーページ(HTMLソース)を取り込んだ後、改行コードで分割して1行ずつ抽出する方法

ASPにより他のホームページ(HTMLソース)を取り込むことに成功した。
しかし、ソース全てを1行として取り込んでしまっているので、
改行で分割が必要。

前回、ASPで他のホームページを取り込むことに成功した。

他のホームページ取り込み方法

上記ソースだと、strHTMLという関数にHTMLソースが書かれる。

また、テキストファイルに書き出してみても、普通に改行されて書き出される。

テキストファイルへの書き出し方法

上記ファイルの「objTS.Write("かきくけこ")」の部分を「objTS.Write(strHTML)」 とすれば、テキストファイルに書き出される。

しかし、HTMLソース全てが欲しいのではなく、必要なデータのみ抽出することが今回の目的である。

他のホームページ取り込み方法で取り込んだ文書をstrHTMLに入れているが、どうも1行の文章となっているようだ。

Perlだと改行されれば、そこで1行とカウントされるが、ASPの場合は改行を1行の終わりとしていない。

下記のように1行毎に読んでやろうと思ったが、最後に<br>が付くだけで、だめであった。

Do while Not strHTML.AtEndOfstream
Response.Write ts.ReadLine & "<br>"
Loop

ということで、取り込んだHTMLソースを改行で分割することとした。

strtmp=Split(strHTML,chr(10))
For Each str In strtmp
Response.Write str & "<br>"
Next

Split関数を使用し、改行=chr(10)でstrHTMLを分割する。改行ごとに、strtmp[0]=・・・、strtmp[1]=・・・と値が代入される。

For Each str In strtmpでstrtmpの配列がある限り実行し、strtmpの値をstrに代入している。

私はこのようにして、行を分割したが、最初から1行ずつ取り込む方法があるかもしれないので、その時は教えてください。

1行ずつ取り出すことに成功したので、次は、所定のデータを抽出する。


サンプルソースはこちら

PS.

改行コードを調べてみたが、Excelではchr(10)で、Accessはchr(13)+chr(10)のようだ。ExcelデータをAccessデータに変換する場合、Replace関数で変換する必要がありそうだ。
今回のHTMLソースを取り込んだ場合、chr(10)で全ての改行を変換できた。
後で問題になってきそうなので、覚書として書いておく。



実践!ASPでAccess操作