PDA自作日記

 

最近の日記

バックナンバー

最近のコメント


   

ファイルの新規作成 ━━━━

今まで、すでにあるファイルに上書きするだけだったのを、新規作成できるようにしました。

このPDAでは「#putfile ファイル名」という行を作って^Oを入力すると、今表示している文書全体を2枚目のメモリカードにテキストファイルとして出力するようになっています。ただ、あらかじめ空のファイルを作っておく必要があったので、ファイルの新規作成もできるようにしました。

実はFATでのファイルの新規作成は、大変ではありませんが、プログラミング的には結構面倒です。まず、目的のディレクトリエントリを最初からスキャンして、同じファイル名がないことを確認します。次に空いているエントリを探し、なければ、サブディレクトリなら1クラスタだけディレクトリエントリを伸長し、先頭をゼロクリアします(ルートディレクトリは伸長できません)。もしそのエントリの先頭が00なら、次のエントリをゼロクリアしておきます。こうして空きエントリが確保でき、やっとファイル情報を書き込めるようになります。

ちなみに、ディレクトリエントリ自体をファイルとして扱うのは悪くないアイディアなのですが、親のディレクトリのファイル情報とごちゃごちゃにならないように注意が必要です。また、サブディレクトリを指すエントリのファイルサイズは常に0で、FATで有効となっているクラスタ数分スキャンしなければならないので、これも注意します。

せっかくの機会なので、FAT12にも対応しました。これで、携帯電話のメモリカードに保存して、メールで送れるようになりました。

(2009/07/20) コメントを書く・コメントを読む


その他のバックナンバー ━━━━


 
  Copyright © π 2009-2012
Powered by light work group
このページの内容は無保証です