Trochę postąpię niezgodnie z duchem tego forum, bo zazwyczaj nikt nie daje gotowców, ale przyznam, że dało mi przeportowanie tego kodu trochę funu...
Poniżej kod trochę inaczej się zachowuje, bo ładuje cały plik do pamięci, ale tylko dlatego tak zrobiłem, bo chciałem aby był najprostszy jak tylko możliwe. Oczywiście można to zrobić tak jak w C++ na strumieniach, ale nie byłoby to tak proste jak poniżej, bo AFAIK api .net-owe daje mało gwarancji odnośnie strumieni i kod byłby nieco bardziej złożony...
Poza tym dodałem parę sprawdzeń odnośnie długości i usunąłem parametr wejściowy "char* nazwa", który jest nieużywany.
using System;
using System.IO;
namespace monoDevelop1
{
class MainClass
{
private static char[][] lab = new char[12] [];
static MainClass ()
{
for (int i = 0; i < lab.Length; i++) {
lab [i] = new char[18];
}
}
private static void wczytaj ()
{
var allLines = File.ReadAllLines ("nazwa.txt");
for (int i = 0; i < 12; i++) {
if (i >= allLines.Length) {
break;
}
var line = allLines [i];
for (int j = 0; j < 18; j++) {
if (j >= line.Length) {
break;
}
lab [i] [j] = line [j];
}
}
}
public static int Main ()
{
wczytaj ();
for (int i = 0; i < 12; i++) {
for (int j = 0; j < 18; j++)
Console.Write (lab [i] [j]);
Console.WriteLine ();
}
Console.ReadKey ();
return 0;
}
}
}