Я довольно новичок в Matlab, и я искал, неясно, следующую проблему: у меня есть файл tструктуры txt с несколькими строками, которые мне не нужны, но есть число строк внутри этого файла, которые имеют структурированный формат. Я изучал, как «загружать» файл для его редактирования, но ничего не могу найти. Поскольку я не знаю, если я ясно, позвольте мне показать вам содержимое в файле:Matlab - читать неструктурированный файл
8782 PROJCS [ "UTM-39", GEOGC .......
1 +676135,67755473056 +2673731,9365976951 -15 0
2 663999,99999999302 2717629,9999999981 -14,00231124135486 3
3 709999,99999999162 2707679,2185399458 -10 2
4 679972,20003752434 2674637,5679516452 0,070000000000000007 1
5 676124,87132483651 2674327,3183533219 -18,94794942571912 0
6 682614,20527054626 2671000,0000000549 -1,6383425512446661 0
...........
8780 682247,4593014461 2676571,1515358146 0,1541080392180566 0
8781 695426,98657108378 2698111,6168302582 -8.5039945992245904 0
8782 674723.80100125563 2675133.54869 35056 -19,920312922947179 0
.........
Я был бы признателен, если кто-то могу просто сказать, есть ли возможность открыть файл, чтобы позже загружать только строки, начинающиеся с 1, начиная с 8782. Первая строка и все остальные не важны. Я знаю, чем вручную копировать и вставлять в новый файл было бы решением, но я хотел бы узнать о возможности прочитать файл и отредактировать его для других моих идей. Спасибо!
Когда вы «нагрузки» файл, вы просто хотите сохранить текст в массиве символов или вы хотите выполнить некоторую обработку при чтении каждой строки? – rayryeng
Спасибо @ rayryeng. Прежде чем вы отправили, мне удалось как-то сделать то, что я хотел. Я использовал fopen, и объединив fget и textscan, мне удалось прочитать каждую строку. Но тогда у меня другая проблема (я очень отвратительна с MATLAB). Позволь мне объяснить. Я написал: D = textscan (B, '% s% s% s% s% s'); RowNo = D {1} {1}; X1 = D {2} {1}; Y1 = D {3} {1}; Z1 = D {4} {1}; Index1 = D {5} {1} ; И я был счастлив, потому что, когда я проверил значение, т. Е. Z1, я сказал, что -10. Но если я попробую Z1 = Z1 + 10, я не получаю 0, а некоторую 3dim-матрицу. Я говорю вам, что я учусь сам, поэтому я могу ошибаться, что может показаться глупым для экспертов. – pino
Я понимаю, что у меня нет номера, но есть матрица, которая присваивает некоторые значения -, 1 и 0. Чтобы быть более ясным, теперь я хочу, чтобы я мог «читать» txt-файл, для первой строки , введите значение 1 в RowNo, сделайте X1 iqual до 676135.67755473056, Y1 до .... так что я могу, скажем, изменить Z1 и сохранить ту же строку с изменением в Z1, а затем перейти к следующей строке ... Теперь Я просто хочу знать, как сделать RowNo, X1, Y1, ... "numbers", остальное я могу узнать сам ... надеюсь. Буду признателен за ваши ответы. Между тем, я продолжу искать решение, возможно, мне удастся его найти :) – pino