read a file upto certain character
조회 수: 5 (최근 30일)
이전 댓글 표시
Hello I have a file which contains 1342400 bits means 10101010010......like this way,
I need to read this file upto 1341440 bits ,how to do so?
after this I need to take chunk of 8bit from this bit sequence and have to convert it in decimal value,separated by ,
like 11111111111111111111111.... i need to convert it in 255,255,255 this way
any help for my two queries
댓글 수: 2
채택된 답변
tusu
2013년 1월 16일
Joy
What u can do is...say ur given data set is in a file name test.txt where it has 26 characters..
do the following
txt=filered(test.txt);% now txt variable has all ur 26 chars,but u need first 16
so
new_txt=txt(1:16);
simple
댓글 수: 0
추가 답변 (2개)
Image Analyst
2013년 1월 15일
fread() can do that for a binary file. Is it a binary file or a text file?
댓글 수: 2
Image Analyst
2013년 1월 15일
Use fgetl() to get a line of text. Then use bin2dec() to turn a chunk of that text into a number.
José-Luis
2013년 1월 15일
The documentation has examples that illustrate how fread() works. Here is a (rather pointless) example of how to read a file bit by bit and then transforming those bits into uint8, which is what you are trying to achieve, if I understood your question right. I insist that it is much better to read directly as uint8
fid = fopen('your_file.txt','r');
numBits = 800; %multiple of 8, in this case it means the first 100 characters
your_vals = reshape(fread(fid,800,'ubit1'),[],8);
fclose(fid);
your_ascii_number = sum(bsxfun(@times,your_vals,2.^(7:-1:0)),2);
댓글 수: 5
참고 항목
카테고리
Help Center 및 File Exchange에서 Text Files에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!