ActiveServerPage(VBS)でAtEndOfLineを使ってファイルを1行づつ読み込む処理をしています。

Do Until objTS.AtEndOfLine
strLine = objTS.ReadLine
Loop
というような形でファイルを読み込んでいるのですが、ファイルの先頭に改行があった場合や、ファイルの途中に改行が2つ以上続いた場合、ファイル終端と判定されてしまいます。(この場合ループを抜けてしまいます)
改行のみの行の場合、その行を飛ばして読み込む等の処理をしたいのですが、この改行のみの行の判定はどのようにすればいいのでしょうか。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2010/10/26 16:57:21
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:a-kuma3 No.1

回答回数4971ベストアンサー獲得回数2153

ポイント35pt

ループの終了判定は、AtEndOfStream で判定して、改行のみの行の読み飛ばしは ReadLine した後に文字列の長さで判定する。


http://msdn.microsoft.com/ja-jp/library/cc364485.aspx

id:salvatore

ありがとうございます。

2010/10/26 16:57:17
id:van-dine No.2

回答回数108ベストアンサー獲得回数11

ポイント35pt

ファイル末判定はAtEndOfLineプロパティではなく、

AtEndOfStreamプロパティです。

こうすれば、空行も正しく読み込まれます。

http://msdn.microsoft.com/ja-jp/library/cc428128.aspx

id:salvatore

ありがとうございます。

2010/10/26 16:57:19

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません