0

次のようなテキストファイルがあります。

置き去りにされた、Lahaye、F、7,11.25

二都物語、ディケンズ、F、100、8.24

リボンで千本の木を吊るす、リナルディ、F、30、16.79

サフィーの天使、マッケイ、F、20、8.22

歌う各小鳥、ワイルズ、F、10、7.70

キリストにとどまる、マレー、N、3、12.20

聖書の予言、ラヘイとハインドソン、N、5、14.95

魅惑的な、エルドレッジ、N、12、16

クリスチャン生活の奥深くに成長する、スウィンドール、N、11、19.95

心を癒す祈り、Virkler、N、4,12.00

グレース、ファーガソン、N、3、11.95で成長

善良で美しい神、スミス、N、7、11.75

闇の勝利、アンダーソン、N、12、16

各行の最後の要素は価格です。すべての価格を合計したいと思います。私は今何時間も探していて、私の質問に答えるものを見つけることができません。これはとても簡単に思えますが、私には理解できません!!! 手伝ってください。ところで、このリストは変更される可能性があります(行の追加、行の削除、行の変更)。可能であれば、具体的なことは何もせず、代わりにコードを変更できるようにしてください。ありがとう!!!

私のpooooorrrrの動作を確認できるように、これが私が持っているものです(コードを削除し、数時間別の方法で書き直したと思います)。

    Dim Inv() As String = IO.File.ReadAllLines("Books.txt")

    Dim t As Integer = Inv.Count - 1
    Dim a As Integer = 0 to t
    Dim sumtotal As String = sumtotal + Inv(4)

また、各行には「F」または「N」のいずれかがあります。すべてのFとすべてのNを合計するにはどうすればよいですか。ifステートメントを介してそれを行いますか?

4

1 に答える 1

0

まず、Stringの代わりにDoubleをタイプとして使用する方がよいでしょう。次に、各行でSplit関数をどのように使用するかを観察し、最後の要素をdoubleとしてキャストし、それを合計に追加します。はい、Ifステートメントを使用すると、FのカウントまたはNのカウントに追加するかどうかを決定できます。

    Dim lstAllLines As List(Of String) = IO.File.ReadAllLines("Books.txt").ToList()

    Dim dblTotal As Double = 0.0
    Dim intCountOfF As Integer = 0
    Dim intCountOfN As Integer = 0

    For Each strLine As String In lstAllLines

        Dim lstCells As List(Of String) = strLine.Split(",").ToList()

        dblTotal += CDbl(lstCells(3))

        If lstCells(2) = "F" Then

            intCountOfF += 1

        Else

            intCountOfN += 1

        End If

    Next
于 2012-07-30T21:28:47.550 に答える