2011-12-05 13 views
0

これらのIが流れを試みたが、それはうまくいきませんでしたコンマ区切り文字列をテキストファイルに分割して、各文字列を別の変数に保存するにはどうすればよいですか?

abc,1,2,3 

私のPCにDドライブに保存されている私のtxtファイルの内容です:

Dim stats() As String = File.ReadAllLines("C:/myfile.txt ") 

Dim data() As String = line.Split(","c) 
Dim query = From line In stats 

Country = Data(0) 

States = CInt(data(1)) 

noOfcoders = CInt(Data(2)) 

rank= CInt(Data(3)) 

holidays = CInt(Data(4)) 
contribution = CInt(Data(5)) 

編集

Iこの行にエラーが発生しています.. data = line.Split( "、" c)...この行はもう使用されていないとか、むしろLineInputを使用していますが、それはファイル番号を要求します。それが何であるかを知る。申し訳ありませんが、私は完全な初心者です。他に何を試すことができますか?私は取得しています

正確なエラー: -

エラー1 '行' のステートメントはサポートされなくなりました。ファイルI/O機能は 'Microsoft.VisualBasic.FileSystem.LineInput'として利用でき、グラフィックス機能は 'System.Drawing.Graphics.DrawLine'として利用できます。 F:私がしたい場合はマーク・サンチェス\ラボ(VB.net)によるプログラミング\ CIS170A_Lab07 \ CIS170A_Lab07 \ \マイドキュメント\ Form2.vb 62 16 CIS170A_Lab07


は大丈夫そのエラーは今が、今行っていますこれらの値をリストボックスに追加してください。どうすればいいですか?

+0

どのようなエラーが表示されますか?ちなみに、ファイルの例には4つのフィールドがありますが、コードでは6つのフィールドを参照しています。 – GrandMasterFlush

+0

「うまくいかない」とは正確に何を意味するのかを説明してください。 – Oded

+0

あなたはもっと具体的になることができますか? "動作しませんでした。"どのように/なぜそれは動作しませんでしたか?例外はありますか?もしそうなら、メッセージは何ですか? –

答えて

3

問題は、テキストファイルを行単位で文字列に読み込んでいることです。

statsは文字列ではなく、文字列の配列です。配列内の各項目は、テキストファイルの1行を表す文字列です。

ファイルには1行しかないので、配列には1つのエントリしかありません。

Dim stats() As String = IO.File.ReadAllLines("C:/myfile.txt ") 
Dim firstLine as String = stats(0) 
Dim data() As String = firstLine.Split(","c) 

Country = Data(0) 
States = CInt(data(1)) 
noOfcoders = CInt(Data(2)) 
rank = CInt(Data(3)) 
holidays = CInt(Data(4)) 
contribution = CInt(Data(5)) 

@GrandMasterFlushも、正しいです:あなたのコードでは、6つのフィールドを参照しているが、あなたのテキストファイルスニペットは、4つの値のみを持っているので、このコードは失敗します。

関連する問題