mbedのファイル名の長さ制限
mbedでローカルのフラッシュ/SDカードのデータにアクセスしようとしたらなぜかファイルオープンに失敗しました。
ファイルはちゃんと存在してるのになんでだろうと思ってアクセス権限とか疑ったりしてましたが結局解決に至らず。
ここで、ふとファイルアクセスの説明ページに「8.3」なるキーワードがあったことを思い出しました。
何者かと思って調べてみると
8.3形式 【8.3 file name】
MS-DOSやWindows 3.1などで採用されている、「8文字以内の英数字.3文字以内の英数字」という形式のファイル名やフォルダ名。
まさにこいつだ!
注意書きにそのまんま書いてあるのに読み飛ばしてました^^;
結論:mbedは8.3形式のファイル名のファイルしか扱えない。
※mbed公式のHandBookのLocalFileSystemのページにはこうしっかり書いてあります。
Warning
The LocalFilesystem has a few restrictions:
Only 8.3 filenames are supported
Sub-directories are not supported
fseek is not supported for files opened for writing ("w")