tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトル最後の改行だけ削る
記事No11326
投稿日: 2008/02/04(Mon) 16:10
投稿者たかし
テキストファイルに文字列を出力したくて、Print #ステートメントを使いました。

Print #1, "あああ"
Print #1, "いいい"
Print #1, "ううう"

とすると、出来上がりは

-------------------
あああ
いいい
ううう
[EOF]
-------------------

こんな風になります。これを、

-------------------
あああ
いいい
ううう[EOF]
-------------------

としたいのですが、方法がわかりません。

[ツリー表示へ]
タイトルRe: 最後の改行だけ削る
記事No11327
投稿日: 2008/02/04(Mon) 16:17
投稿者魔界の仮面弁士
> Print #1, "あああ"
> Print #1, "いいい"
> Print #1, "ううう"

昔は、最終改行を含めたく無いのであれば、このように書くのが
常套的だったのですが…… VB6 ヘルプの説明からでは想像しにくいでしょうね。

Print #1, Tab(1); "あああ";
Print #1, Tab(1); "いいい";
Print #1, Tab(1); "ううう";

(詳細はヘルプの Tab 関数/Spc関数/Width # ステートメント/Print # ステートメントを参照)


なお、上記以外の手法としては、
 FileSystemObject を用いた「TextStream オブジェクトの Write / WriteLine メソッド」
 ADO を用いた「Stream オブジェクトの Write メソッド(adWriteChar / adWriteLine)」
といった手法もあります。(こちらは、Unicode データにも対応しています)

[ツリー表示へ]
タイトルRe^2: 最後の改行だけ削る
記事No11328
投稿日: 2008/02/04(Mon) 16:43
投稿者たかし
ありがとうございました。
過去ログを読んでも「;で改行を抑制」の意味が良くわからず、試しに実行
してみる事もできなかったのです。

教えていただいた通りにやってみたら、うまくいきました。

ヘルプを読んでも、まだ、どうしてこの方法で上手くいくのか良く理解でき
ないのですが、それは自分で調べてみようと思います。

本当にありがとうございました。

[ツリー表示へ]