数字(文字) ⇒ int

カンマで区切られた TEXT 文字列(カンマで区切られた数字)を int に変換して印字します。
"//テストデータ"
"1, 2, 3, 4, 5, //コメント"
"-1, -2, -3, //Comment"

前田稔(Maeda Minoru)の超初心者のプログラム入門

プロジェクトの設定

  1. TEXT FILE を入力 ではファイルから TEXT データを入力する方法を説明しました。
    ここでは、カンマで区切られた TEXT 文字列を int に変換する方法を説明します。
    Mapchip を組み合わせて背景を作成 でも同様のことを行っていますが、 今回は Split() メソッドを使って try と catch で処理します。
  2. カンマで区切られた TEXT 形式の文字列です。
    「//」以降はコメントとして読み捨てます。
            string[] str= { "//テストデータ", "1, 2, 3, 4, 5, //コメント", "-1, -2, -3, //Comment" };
    
  3. Initialize() メソッドで str[] の文字列からカンマで区切られたデータを int 型に変換して印字します。
    wk[] は一行分の文字列を delimiter で区切って分割する領域です。
    delimiter[] はデータの区切りに使用する文字(カンマ)の定義です。
    str[i].Split(delimiter) で str[i] の文字列を delimiter で区切って wk[] に分割します。
    このとき正常に分割出来れば try{...} を、失敗すれば catch{...} が実行されます。
    try では分割された文字(数字)を int に変換して印字します。
    catch では現在の行を読み捨てて、次の行に移ります。
            protected override void Initialize()
            {
                string[]    wk;
                char[]      delimiter = { ',' }; //分割文字
    
                // TODO: Add your initialization logic here
                base.Window.Title = "XNA Game Studio";
    
                //カンマで区切られたデータを取り出す
                for(int i=0; i<str.GetLength(0); i++)
                {
                    Console.WriteLine(str[i]);
                    wk= str[i].Split(delimiter);  //カンマで分割
                    try
                    {   //こけたらcatchに行く。
                        for(int j=0; j<wk.GetLength(0); j++)
                            Console.WriteLine(int.Parse(wk[j])); //int に変換して印字
                    }
                    catch
                    {
                        //空白であった場合、Read Next
                        //例外処理がないので、何も書いていない。
                    }
                }
    
                base.Initialize();
            }
    
  4. Console.WriteLine()で印字した内容は「出力ウインドウ」に表示されます。
    プログラムを実行して「出力ウインドウ」の表示を確認して下さい。

前田稔(Maeda Minoru)の超初心者のプログラム入門

超初心者のプログラム入門(XNA(C#) game program)