2016-05-22 10 views
1

私は最近、高校のカリキュラムの一部としてVB6でプログラミングを始めました。私の主な問題は、テキストファイルに保存しようとしているときにライン入力と関係があります。 VB6:ライン入力を使用してtxtを保存しながら複数の変数を使用しようとしています

は、Y、Iは、変数xがあると、私はそうのようなテキストファイルにそれらを印刷:

Print #1, x, y 

私は次のようにライン入力を使用してそれらにアクセスしようとした場合:

Line Input #1, SavedX, SavedY 

Iエラーが発生します。

しかし、私は、このようにそれらを印刷する場合:

Print #1, x 
Print #1, y 

をし、このようにそれらにアクセスしよう:私はすべてのエラーに遭遇していない

Line Input #1, SavedX 
    x = SavedX 
Line Input #1, Savedy 
    y = SavedY 

Line Inputを使用してxとyの両方の値を同じ行に保持できますか?または私は今述べた方法を使用することを余儀なくされたのですか?

申し訳ありません私の説明が吸い込まれたが、それは私がそれを説明したと思った最善の方法でした。

+1

VB.NET IsNot VB6 AndAlso IsNot vba - タグを削除しました – Plutonix

+2

今日、学校がVB6として言語を教えることを選択した理由は不思議です。 – Steve

+2

@スティーブ私はあまりにも思っていますが、過去には毎回、それが本当に事件かどうかを尋ねました。(VB.NETは設定に時間がかかりすぎるような奇妙な回答をしています。 NET *を知っている)。 – Plutonix

答えて

1

Print #1, x, yを実行すると、xyの値が、テキストファイルの1行にTAB文字で区切られて書き込まれます。 2つの別々のPrintステートメントを実行すると、各変数が新しい行に書き込まれます。コメントに記されているように、Line Inputは1行全体を1つの文字列に読み込みます。このため、最終的な例は、それぞれLine Inputが新しい行を読み込むときに機能します。あなたが1行にすべてをしたい場合は、Print #1, x, yでそれを書き出し、その後のようなものでそれを読む:あなたはより良いWriteを見て、上の複数の変数のためのより良い応えるInputされるかもしれないこの種のもののために

Dim s as String 
Dim values() as string 
Line Input #1, s 
values = Split(s, vbTab) 
x = values(0) 
y = values(1) 

ライン。サンプルは、申し訳ありませんが、私はより完全な例を与えるために、現時点でVB6環境へのアクセスを持っていない

Dim MyString, MyNumber 
Open "TESTFILE" For Input As #1 ' Open file for input. 
Do While Not EOF(1) ' Loop until end of file. 
    Input #1, MyString, MyNumber ' Read data into two variables. 
    Debug.Print MyString, MyNumber ' Print data to the Immediate window. 
Loop 
Close #1 ' Close file. 

https://msdn.microsoft.com/en-us/library/office/gg264519.aspx

の下のリンクから取られました。

+0

最後に、ありがとうございます!私はプリントと入力を一緒に使ってみることに非常に苦労していましたが、私が書いて入力したすべてを入力して、意図したとおりに作業を開始した瞬間です。もう一度あなたに感謝し、私はあなたが素晴らしい一日を持って願っています! – JustTheRennie

関連する問題