2011-11-15 21 views
3

テキストボックスから入力しています。char配列をintに変換するには?

char[] _array = textBox1.Text.ToCharArray(0, textBox1.Text.Length); 

は、今私は、私は、配列の各インデックスでは、数学的な演算を実行するので、int型の配列に配列を変換したい:私はこのような配列にテキストボックスからの入力桁を保存しました。

どのように目標を達成できますか?おかげさまで

+2

あなたの意向をここで知る必要があります。あなたは数値の文字列を期待しているのですか、あるいはそれぞれの 'char'をその文字コードに変換したいですか? –

+0

テキストボックス入力が数値であることを確認するコードを実装しましたか?上のコードでは、テキストボックスの各文字を数字のCHAR値に変換するのはあなたの意図か、入力文字列をint、つまり1234から1234に変換しますか? – Maess

+0

数値を取得したい。 配列の特定のインデックスのそれぞれの桁。 –

答えて

1

私は私の問題を解決しました。私は仕事を達成するためにリストを使いました。

それぞれのインデックス値をintに変換した後、リストの相対インデックスに各配列インデックスを格納しました。

リストを使用する方が私にとってより便利に思えます。 :)

ありがとうございます。

10

各文字の文字コードが必要な場合は、LINQを使用します。

string[] ints = { "1", "2", "3" }; 

var str = ints.Select(i => int.Parse(i)); 

ただし、上記既にテキストからご入力することを検証している場合にのみ動作します:私は私のコメントで尋ねたことは事実であると仮定すると、

var intArrayOfText = "some text I wrote".ToCharArray().Select(x => (int)x); 

または

var intArrayOfText = someTextBox.Text.ToCharArray().Select(x => (int)x); 
+0

LINQの使い方:) – RBT

1

ボックスは数値です。

5

各文字が数字であることを期待した場合、あなたはintにそれを解析することができますが:

List<int> listOfInt = new List<int>(); 
_array.ToList().ForEach(v => listOfInt.Add(int.Parse(v.ToString()))); 
int[] _intArray = listOfInt.ToArray(); 

文字コード値:

List<int> listOfCharValue = new List<int>(); 
_array.ToList().ForEach(v => listOfCharValue.Add((int)v)); 
int[] _charValueArray = listOfCharValue.ToArray(); 

あなたは例外を処理する必要があります。

関連する問題