"Вычисления, визуализация и программирование в среде MATLAB 5.x" - читать интересную книгу автора (Мартынов Н. Н., Иванов А. П.)

fidl = fopen( 'cTest.xxx', ;rb' );
[ a , count ] = fread( fidl, [1,3], 'float32' );
fclose( fidl );
ёючфр■∙шщ ўшёыютющ ьрёёшт р Єшяр double ЁрчьхЁюь 1x3 (ёь. Ёшё. 3.15). ╬ўхэ№ трцэю юЄьхЄшЄ№, ўЄю яЁш ўЄхэшш сшэрЁэ√ї Їрщыют ЇєэъЎшхщ fread тёхуфр ёючфр■Єё  ьрёёшт√ (тхъЄюЁ√ шыш ьрЄЁшЎ√) шьхээю Єшяр double эхчртшёшью юЄ ЇюЁьрЄэюую ЄюўэюёЄэюую Їырур, ё ъюЄюЁ√ь т√чтрэр ¤Єр ЇєэъЎш .
Х> MATLAB Command Window -IDIXI
File Edit Window Help
0 G╗U 4 m tg i l╗i?
╗ whos a
Name Size Bjtes Class
a 1x3 ╨шёєэюъ 3.15
╧ЁютхЁшь ўшёыют√х чэрўхэш  ¤ыхьхэЄют ьрёёштр р, яЁюўшЄрээ√х шч сшэрЁэюую Їрщыр ' cTest. xxx' яюърчрээ√ь т√°х ЇЁруьхэЄюь ъюфр:
р = 1.1000
2.1000 3.1000
╬Єё■фр тшфэю, ўЄю яЁюўшЄрэ√ яЁртшы№э√х чэрўхэш . ┼ёыш с√ ь√ ўшЄрыш Їрщы 'cTest.xxx' ё Їыруюь 'float64', Єю ь√ эх Єюы№ъю с√ яюыєўшыш эхяЁртшы№э√х ўшёыют√х чэрўхэш  фы  ¤ыхьхэЄют ьрёёштр, эю ш т√°ыш с√ чр уЁрэшЎє Їрщыр. ,
118 ├ыртр 3. ╠рёёшт√ ёшьтюыют, ёЄЁєъЄєЁ,  ўххъ. ╘рщыют√х юяхЁрЎшш
─Ёєушь юўхэ№ їрЁръЄхЁэ√ь яЁшьхЁюь шёяюы№чютрэш  т ЇєэъЎшш fread ЇюЁьрЄэюую ЄюўэюёЄэюую Їырур, юЄышўэюую юЄ ' float64',  ты хЄё  ёыєўрщ ЇюЁьшЁютрэш  ЁрёЄЁютюую шчюсЁрцхэш  тю тэх°эшї яю юЄэю°хэш■ ъ ёшёЄхьх MATLAB яЁюуЁрььрї. ═ряЁшьхЁ, т ёыхфє■∙хщ яЁюуЁрььх эр  ч√ъх C++
linclude int main( void ) ж
FILE* fid = NULL;
char* pF = 'd:\\Matlab\\bin\\cTest.xxx';
unsigned char r = 200;
unsigned char g = 100;
unsigned char b = 50;
fid = fopen( pF, 'wb' );
int i;
for(i=0;i<100*100;i++)fwrite( &r, 1, 1, fid );//RED
for(i=0;i<100*100;i++)fwrite( &g, 1, 1, fid );//GREEN
for(i=0;i<100*100;i++)fwrite( &b, 1, 1, fid );//BLUE
fclose( fid );
return 0;
ёючфрхЄё  яЁюёЄхщ°хх (рсёюы■Єэю юфэюЁюфэюх, ъЁрёэютрЄюую ЎтхЄр) шчюсЁрцхэшх TrueColor ЁрчьхЁюь 100 ї 100 яшъёхыют. └ яюърчрээ√щ эшцх ЇЁруьхэЄ ъюфр эр╠- ч√ъх ёшёЄхь√ MATLAB, шёяюы№чє■∙шщ Їыру 'uchar' т ЇєэъЎшш fread (яю юфэюьє срщЄє эр ¤ыхьхэЄ ьрёёштр):
fidl = fopen( 'cTest.xxx', Хrb' ); [XI,count] = fread( fidl, [100,100], [X2,count] = fread( fidl, [100,100], [X3,count] = fread( fidl, [100,100], Img(:,:,l)=Xl; Img(:,:,2)=X2; image(uint8(Img)) fclose ( fidl )
'uchar'
'uchar1
'uchar'
:,3)=X3;
ёяюъющэю ўшЄрхЄ хую ш яюърч√трхЄ т ётюхь уЁрЇшўхёъюь юъэх. ╧юьшью Їырур ' uchar' ьюцэю шёяюы№чютрЄ№ ¤ътштрыхэЄэ√щ хьє Їыру ' uint8', ъюЄюЁ√щ Єръцх юсхёяхўштрхЄ ўЄхэшх яю юфэюьє срщЄє эр ¤ыхьхэЄ.
╥ръ ъръ эхы№ч  ЇєэъЎшхщ fread ёЁрчє яЁюўхёЄ№ ёюфхЁцшьюх сшэрЁэюую Їрщыр т ЄЁхїьхЁэ√щ ьрёёшт, Єю ь√ ёэрўрыр ўшЄрхь юЄфхы№э√х ЎтхЄют√х яыюёъюёЄш (ьрЄЁшЎ√ 100 ї 100) т ўшёыют√х ьрЄЁшЎ√ XI, ╒2 ш ╒╟, р чрЄхь ёЄЁюшь шч эшї ЄЁхїьхЁэ√щ ьрёёшт Img Єшяр double. ═хяюёЁхфёЄтхээю яхЁхф яюърчюь ЁрёЄЁютюую шчюсЁрцхэш  ЇєэъЎшхщ image ь√ ъюэтхЁЄшЁєхь ¤ЄюЄ ьрёёшт т Єшя uint8, ю ъюЄюЁюь ьэюую уютюЁшыюё№ т уы. 2, яюёт ∙хээющ уЁрЇшўхёъющ яюфёшёЄхьх яръхЄр MATLAB.
MATLAB 5.x. ┬√ўшёыхэш , тшчєрышчрЎш , яЁюуЁрььшЁютрэшх 119
╫Єхэшх ш чряшё№
яЁюшчтюы№э√ї ЄхъёЄют√ї Їрщыют
─ы  ЁрсюЄ√ ёю ёЄЁюъют√ьш фрээ√ьш шфхры№эю яюфїюф Є ЄхъёЄют√х Їрщы√. ╬эш їюЁю°ю яЁшёяюёюсыхэ√ фы  чряшёш сюы№°шї ЇЁруьхэЄют ЄхъёЄр, яюёъюы№ъє ¤Єшь Їрщырь юЁурэшўхёъш яЁшёє∙х ляюэшьрэшх╗ фхыхэш  ЄхъёЄр эр ёЄЁюъш (т ёрьюь ўЄю эш эр хёЄ№ ъэшцэюь ёь√ёых ¤Єюую ёыютр), р сшэрЁэ√х Їрщы√ ¤Єюую лэх яюэшьр■Є╗, Єръ ъръ ЁрсюЄр■Є Єюы№ъю ё яюЄюъюь срщЄют.
╬фэръю ЄхъёЄют√х Їрщы√ їюЁю°ш ш фы  чряшёш ўшёхы, хёыш яюёыхфэшх яЁхфтрЁшЄхы№эю яхЁхтхёЄш т ЄхъёЄютюх яЁхфёЄртыхэшх. ▌Єю с√трхЄ юўхэ№ єфюсэю, Єръ ъръ ўшёыютє■ шэЇюЁьрЎш■ т ЄхъёЄютюь яЁхфёЄртыхэшш єфюсэю ўшЄрЄ№ ЄхъёЄют√ьш ЁхфръЄюЁрьш ш уюЄютшЄ№ ёьх°рээє■ ЄхъёЄю-ўшёыютє■ шэЇюЁьрЎш■ ъ лсєьрцэющ╗ яєсышърЎшш (яхўрЄш). ╨рёёьюЄЁшь яю юўхЁхфш тёх яхЁхўшёыхээ√х тючьюцэюёЄш.
╫Єюс√ ЁрсюЄрЄ№ ё Їрщырьш т ЄхъёЄютюь Ёхцшьх, шї эєцэю юЄъЁ√Є№ ё фюяюыэшЄхы№э√ь Їыруюь ' f, ъюЄюЁ√щ фюсрты хЄё  ъ ЄЁрфшЎшюээ√ь Їырурь 'у' шыш 'w'. ╫шЄрЄ№ фрээ√х шч ЄхъёЄют√ї Їрщыют ьюцэю ЇєэъЎш ьш fgetl, fgets ш f scanf, р яшёрЄ№ - ЇєэъЎшхщ fprintf.
═рўэхь ё ўЄхэш  ЄхъёЄют√ї Їрщыют. ─ы  ¤Єюую т ЄхъёЄютюь ЁхфръЄюЁх Notepad яюфуюЄютшь Їрщы 'MyString.txt', ёюфхЁцшьюх ъюЄюЁюую яюърчрэю эр Ёшё. 3.16.
┘ MyStrinq.bd - Notepad
?ile Edit Search щх!Ё
I ╨шёєэюъ 3.16
╥хяхЁ№ яЁюўЄхь ¤ЄюЄ ЄхъёЄ Їрщыют√ьш ёЁхфёЄтрьш яръхЄр MATLAB. ─ы  т√яюыэхэш  ¤Єющ чрфрўш їюЁю°ю яюфїюф Є ЇєэъЎшш fgetl ш fgets, ърцфр  шч ъюЄюЁ√ї ўшЄрхЄ шч ЄхъёЄютюую Їрщыр юфэє ёЄЁюъє ЄхъёЄр (шьххЄё  т тшфє ухюьхЄЁшўхёър  ёЄЁюър ЄхъёЄр, ўЄю эр яЁхф√фє∙хь Ёшёєэъх ёююЄтхЄёЄтєхЄ, эряЁшьхЁ, ёЄЁюъх first, ёЄЁюъх second ш Є. ф.). ═ряЁшьхЁ,
fidl = fopen( 'MyString.txt1, 'rt' ) ;