0

リスト配列に csv ファイルの行を入力しています。空の列とそうでない列があります。それらが空の場合、これらの空の列に「0」を含めたいと思います。string[] の長さは 1 から 7 までです。ただし、すべての作業が完了すると、7 個の項目を返す必要があります。

私のデータは次のようになります。

ブレンダ マインズ スノー ピロー,2013-11-26 04:00:00,-2.943,364,59,,

またはこれ:

バーンズ クリーク スノー ピロー、2013-11-26 04:00:00,-6.6,344,117,10,12.97

または、他の列が欠落している可能性のある他のバリエーション。

String[] data;最終的に常に7つのアイテムが含まれるようにするにはどうすればよいですか?

data[0] through data[6]

を試しましたif(data[i] == null){data[i] = "0";}が、解析されたデータからのリストの長さが i でない可能性があり、インデックス OB エラーが発生するため、うまくいきません。

別の配列を作成してそこにアイテムを追加しようとしましたがdata[i] was null, data2[i] = "0" else data[i] = data2[i];、 data[i] からのアイテムが存在しない可能性があります... 配列に常に7つのアイテムを含める方法について混乱しています。

どんな助けでもとても素晴らしいでしょう。最初に初期化しようとしたことを追加する必要があります: String[] data = {"0","0","0","0","0","0","0"}

編集: data.length が 7 であることを確認しました...だったので、問題は何でしたか: NULL と空の文字列はここで答えられます。

4

2 に答える 2

1

配列を作成するときに、すべて 0 のサイズ 7 の配列に初期化できます。次に、読み込んだデータを .CSV ファイルのデータに置き換えることができます。「空」だったものはすべて、デフォルトの目的の値 0 になります。

于 2013-11-26T06:43:25.987 に答える
0

私が遭遇した問題は、文字列の場合とNULLは異なるという""ことです。

NULL は特別なデータ型で、値がないことを意味します。

一方、空の文字列は、空の文字列または値を意味します。

From: NULL と空の文字列

于 2013-11-26T16:36:57.200 に答える