Próbuję wysłać tablicę, która [2 x N] podwaja dużą do pliku tekstowego za pomocą komendy fprintf()
. Mam problemy z tym, że fprintf()
nie rozpoznaje nowego polecenia linii (\n
) lub polecenia powrotu karetki (\r
). Kod używam jestfprintf nie drukuje nowej linii
fid = fopen([Image.Dir,'CtlPts_',Image.Files{k},'.txt'],'w');
fprintf(fid,'%.4f\t%.4f\n',control_points{k});
fclose(fid);
gdzie dane Próbuję wydrukować w komórce control_points{k}
.
Zakładka zostanie wydrukowana poprawnie, ale wszystko w pliku tekstowym zostanie wydrukowane w jednym wierszu, dlatego zakładam, że ignoruje ona moją nową linię.
Czy jest coś nie tak z moją składnią, której nie widzę?
czy zrobiłeś zrzut pliku? Wiem, że na wielu systemach \ n nie wystarcza do stworzenia tego, o co prosisz (i, być może, musisz zrobić \ r \ n). – KevinDTimm
@KevinDTimm Nie jestem pewien, co robi zrzut pliku (czy możesz wyjaśnić w formacie odpowiedzi), ale przy użyciu \ r \ n działało. Napisz to jako odpowiedź, a ja ją wybiorę. –
przyczyną zrzutu jest sprawdzenie, czy plik zawiera \ n. Jeśli tak (prawdopodobnie), wówczas obowiązuje druga część mojego komentarza/odpowiedzi. – KevinDTimm