- ベストアンサー
改行コードについて vbNewLine
windows2000,xpで以下のコマンドをリダイレクトして、 result.txtをバイナリエディタで開くと、コードが異なるのですが何故なのでしょうか? windows2000で行うと、0d0d0aとなり、xpで行うと、0d0aとなります。 いったいどうしてなのでしょうか?? sample.bat cscript //nologo sample.vbs >result.txt sample.vbs WScript.Echo vbNewLine
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
私のWindows 2000 Pro, XP Proではresult.txtの中身はどちらも0d0a0d0aになりました。 VBScriptのvbNewLineはプラットフォームで変わるようですので、どこかで定義されているのかもしれないですね。そこが書き換わっているとか。 Visual Basic Scripting Edition 文字列の定数 http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/script56/html/vsconstring.asp 上のドキュメントによればVbCrLfだとChr(13)、Chr(10)で固定になるようです。
その他の回答 (1)
- notnot
- ベストアンサー率47% (4900/10358)
回答No.2
vbNewLine をスペルミスしていると、WScript.Echo vbNewlain とかは 0d0a になりますね。
質問者
お礼
どうもありがとうございます。 スペル間違いも確認してみましたが、、 わかりませんでした。 ただ、マシン自体ちょっとおかしな動きしている状態もあるので、 バージョンとかの可能性もありますね・・・。
お礼
わざわざ試して頂きありがとうございます。 なるほど。 その可能性も十分あります。。 原因がわからないため、VBScriptでvbNewLine,vbCrLfを 使うのはやめました。 改行したい分だけ「WScript.Echo」を書くことにしました。 「WScript.Echo」だけでしたら、「0d」付いてこないので・・ まぁ、コードとしては見栄えがよくないのですが・・・ もうちょっと調べてみます....