インデックスが配列の境界外ですという例外について
- 題名: インデックスが配列の境界外ですという例外について
- 著者: としお
- 日時: 2010/12/20 18:01:35
- ID: 27863
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: インデックスが配列の境界外ですという例外について
- 著者: 魔界の仮面弁士
- 日時: 2010/12/20 18:56:33
- ID: 27864
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: インデックスが配列の境界外ですという例外について
- 著者: Azulean
- 日時: 2010/12/20 22:39:11
- ID: 27867
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: インデックスが配列の境界外ですという例外について
- 著者: としお
- 日時: 2010/12/21 11:20:53
- ID: 27868
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: インデックスが配列の境界外ですという例外について
- 著者: としお
- 日時: 2010/12/21 11:21:24
- ID: 27869
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
よろしくお願いします。 以下のソースコードをビルドするとエラーはないのですが、実行すると タイトルのような例外が発生します。 読み込みたいcsvファイルは2列15行なのですがこれは実装に問題があるということなのでしょうか? ご教授していただけたら幸いと思い質問させていただきます。 よろしくお願いします。 ↓メイン部分 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 配列 { class Program { static void Main(string[] args) { string FileName = "C:\\15ポイントデータ.csv"; string encod = "shift_jis"; DataClass[] table = ReadCSV(FileName, encod); } static DataClass[] ReadCSV(string FileName, string encod) { System.IO.StreamReader sr = null; try { System.Text.Encoding EncoObj = System.Text.Encoding.GetEncoding(encod); sr = new System.IO.StreamReader(new System.IO.FileStream(FileName, System.IO.FileMode.Open), EncoObj); string text = sr.ReadToEnd(); //行単位に分離して配列に格納 string[] line = text.Split(new string[] { "\r\n", "\r", "\n" }, StringSplitOptions.RemoveEmptyEntries); string[] StrArryData = new string[5]; DataClass[] table = new DataClass[line.Length]; for (int i = 1; i <= line.Length; i++) { //行単位に分離して配列に格納 StrArryData = line[i].Split(','); //各種の列要素のデータを確保 table[i] = new DataClass(); double.TryParse(StrArryData[0], out table[i].dataArry1); double.TryParse(StrArryData[1], out table[i].dataArry2); } return table; } catch (System.Exception ex) { Console.WriteLine(ex.Message); } finally { if (sr != null) sr.Close(); } return null; } } } ↓配列部分 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 配列 { public class DataClass { public double dataArry1 = new double(); public double dataArry2 = new double(); } }