Ну, если уж делать "как положено", то есть с привлечением средств ООП, то нужно создать класс, описывающий формат файла и умеющий считывать его в память (опционально - записывать содержимое памяти обратно в файл того же формата) с функцией-членом, обеспечивающей чтение произвольного элемента.
И при заполнении целевого массива использовать эту функцию со сдвигом на 2 столбца (т.е. 1-й элемент строки целевого массива считывается считывается из 3-го элемента соответствующей "строки" класса).
А всю "прозу жизни" (разбор строк файла) упрятывать в этот класс.
Если количество строк сильно переменное (скажем, от 10 до 10000) имеет смысл целевой двумерный массив заменить на связанный список указателей на элементы-"строки" (чтобы не выделять априорно лишнюю память и в то же время не оказаться в ситуации, когда выделенная память недостаточна для считывания файла).
В общем, очень многое зависит от того, что в дальнейшем планируется делать с целевым массивом...
Цитата:
Сообщение от Emelman
что значит "-1" в конце команды
|
Означает, что ";" в подстроку не попадает (крайним правым символом подстроки-результата этой команды становится символ слева от ";").
На самом деле, данная функция должна стоять в правой части оператора присваивания...
Цитата:
Сообщение от Emelman
Что за команда "SubString"?
|
Функция выделения подстроки, что вполне очевидно...
Цитата:
Сообщение от Emelman
Потом мы зачем-то стираем и третий столбец.
|
Чтобы следующая
strTMP.SubString(1,strTMP.Pos(";") - 1); вернула значение четвёртого столбца...
Цитата:
Сообщение от Emelman
не понятное мне "+1"
|
Вот здесь мне тоже не совсем понятно, а лезть в мануал за описанием команды лень... Если данная команда - правильная, то почему "+1" нету в команде удаления первых двух столбцов?