2015-01-21 3 views
0

Доброе утро, я хотел знать, как я могу поступать любезно. У меня есть .txt-файл, где проект представлен в ASCII. Через консоль я хочу прочитать этот файл и добавить любой символ ASCII в массив символов типа. Как я могу это знать, чтобы прочитать файл, который я должен использовать для строки? Я нашел этот путь, но я не знаю, как использовать полукоксЧтение текстового файла

class Program 
    { 
     static void Main(string[] args) 
     { 


      string[] lines = System.IO.File.ReadAllLines(@"best.txt"); 
      foreach (string line in lines) 
      { 

       Console.WriteLine("\t" + line); 
      } 

      Console.ReadLine(); 
     } 
    } 
+0

не могли бы вы разместить здесь .txt файл здесь? – Sandip

+0

Это пример того, что у меня есть в файле .txt – user3223680

+0

Я три раза читал ваш вопрос, и я не могу понять, что именно вы спрашиваете. – Dennisch

ответ

1

Ммм, ваш вопрос не достаточно ясно .. Но .. У меня есть это право?
Вы хотите сопоставить всех символов в текстовом файле с массивом 2d?
Что-то вроде этого:

[0, 0] = "a" 
[0, 1] = "b" 
[0, 2] = "c" 
..<omited>.. 
[4, 0] = "x" 
... 
and so on... 

Небольшой тест текстовый файл:

abcdefghij 
1234567890 
jihgfedcba 
0987654321 
xxxxxxxxxx 
0000000000 
yyyyyyyyyy 
9999999999 
---------- 
!!!!!!!!!! 

C# Код:

static void Main() 
{ 
    String input = File.ReadAllText(@"test.txt"); // read file content 
    input = input.Replace("\r\n", "\n");   // get rid of \r 

    int i = 0, j = 0; 
    string[,] result = new string[10,10];   // hardcoded for testing purposes 
    foreach (var row in input.Split('\n'))   // loop through each row 
    { 
     j = 0; 
     foreach (var col in row.Select(c => c.ToString()).ToArray()) // split to array 
     {               // and loop through each char 

      result[i, j] = col;          // Add the char to the jagged array => result 
      j++; 
     } 
     i++; 
    } 
} 


// EDIT: added some code to print out the result. 
// Print all elements in the 2d array. 
int rowLength = result.GetLength(0); 
int colLength = result.GetLength(1); 

for (int k = 0; k < rowLength; k++) 
{ 
    for (int h = 0; h < colLength; h++) 
    { 
     Console.Write("{0} ", result[k, h]); 
    } 
    Console.Write(Environment.NewLine + Environment.NewLine); 
} 

Я жёстко размер массива в этом примере.

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