4/11/2011

讀檔 解碼 翻譯 另存新檔

題目:
HievHypgmi0
MeqjmjxiirerhMlezixswlevievssq{mxlqrmri1}iev1sphwmwxiv2
Wlimwziv}yrxmherhMlezixsgpierytlivqiwweppxlixmqi2
Wlirizivpieziwqxlmrkwepsrierhoiitwstirmrkqhve{ivwerhpssomrkexiziv}xlmrkmrwmhi2
RsxlmrkMlezimwtvmzexi2Epws0M!‥qrsxepps{ihxshslexMerxxshs2
QsqweMqywxxyvrqvehmssjjexrmklxfigeywixlirsmwioiitwq}wmwxive{eoi2
[lexgerMhsC
Pmrhe

上列亂碼是由原來的ASCII碼加4後所得,請寫MATLAB程式將其還原,並將內容翻譯成中文。

 fid=fopen('message.txt'); %開啟檔案
fout=fopen('tmessage.txt','W');%另存檔案
while feof(fid)==0;%讀檔,若檔案讀完,feof=1
    str=fgetl(fid);%一列一列讀完,包跨換行字元
    fprintf(fout,'%s \r\n',char(int8(str)-4));%將每一行字串轉換為ASCII碼再減4,再輸出至另一檔案儲存
end
fclose(fid);
fclose(fout);
結果:
親愛的Dulcie,
我十五歲,和我九歲的妹妹同住一間房。
她很邋遢,我不得不花一堆的時間清理他製造的垃圾。
她總是亂動我的東西而且常常翻遍我的抽屜看看裡面有些甚麼。
我沒有任何隱私。此外,我沒辦法做我想做的事。
媽媽說因為收音機的聲音會讓妹妹沒辦法睡覺,所以我必須要關掉。
我該怎麼做?
Linda上