2012-06-01 6 views
3

Как создать разделительную строку в 2-мерном массиве в приложении C# Console?Разделить строку на двумерный массив

char[,] table2x2 = new char[2, 2]; 
string myString = "11A23A4A5A"; 
string[] splitA = myString.Split(new char[] { 'A' }); 

так, что выход будет

Console.WriteLine(table3x3[0, 0]); //output: 11 
Console.WriteLine(table3x3[0, 1]); //output: 23 
Console.WriteLine(table3x3[1, 0]); //output: 4 
Console.WriteLine(table3x3[1, 1]); //output: 5 

Вернулись обратно к первоначальному вопросу. Спасибо заранее!

+1

Если тип 'table2x2' элементов будет' char', вы никогда не получите этот вывод. Вы должны изменить его на 'string' или' int' (для этого требуется разбор). –

+0

Спасибо за ввод – Asmo

+0

После вашего редактирования я не понимаю индексы для 'table3x3'. Как вы строите выход? –

ответ

6
// your code, char[,] replaced by string[,] 
string[,] table2x2 = new string[2, 2]; 
string myString = "11A23A4A5A"; 
string[] splitA = myString.Split(new char[] { 'A' }); 

// this converts splitA into a 2D array 
// Math.Min is used to avoid filling past the array bounds 
for (int i = 0; i < Math.Min(splitA.Length, 2*2); i++) { 
    table2x2[i/2, i % 2] = splitA[i]; 
} 
+0

Он работает как прелесть для моего предыдущего вопроса. К сожалению, я изменил формат вопроса. – Asmo

+0

@Asmo: Ну, тогда я предлагаю начать новый вопрос, потому что теперь ответ больше не подходит. ;-) – Heinzi

+0

Я подумывал задать новый вопрос. Но похоже, что есть небольшая модификация. Поэтому я решил изменить и изменить вопрос. Будет ли подобный подход? – Asmo

Смежные вопросы