LuaFileSystemで得られる謎の数値を、可読可能な文字列および日付情報に変換します。
ライブラリLib:libFlashTimeに同等の機能があります。
参考:電子工作記録: FlashAirのLuaスクリプトで得たファイル更新時間を文字列に直す
http://gpsnmeajp.sblo.jp/article/181155303.html
ライブラリLib:libFlashTimeに同等の機能があります。
参考:電子工作記録: FlashAirのLuaスクリプトで得たファイル更新時間を文字列に直す
http://gpsnmeajp.sblo.jp/article/181155303.html
function GetFileModificationTime(Fat_binary_time) Year = bit32.band (bit32.rshift(Fat_binary_time, 9+16),0x7F) + 1980 Month = bit32.band (bit32.rshift(Fat_binary_time, 5+16),0x0F) Day = bit32.band (bit32.rshift(Fat_binary_time,0+16),0x1F) Hour = bit32.band (bit32.rshift(Fat_binary_time, 11),0x1F) min = bit32.band (bit32.rshift(Fat_binary_time, 5),0x3F) sec = bit32.band (Fat_binary_time,0x1F)*2; --FAT時間は秒数が2秒刻み return Year,Month,Day,Hour,min,sec end --yyyymmdd_hhmmss.jpgを生成する function TimeToFileName(Year,Month,Day,Hour,min,sec) return string.format("%04d%02d%02d_%02d%02d%02d.jpg",Year,Month,Day,Hour,min,sec) end -------------------サンプル---------------------- --Hello.txtの更新時間を取得する a = lfs.attributes("Hello.txt") --文字列で得る Year,Month,Day,Hour,min,sec = GetFileModificationTime(a.modification) print(Year.."年"..Month.."月"..Day.."日"..Hour.."時"..min.."分"..sec.."秒") --文字列で得たものをファイル名形式にする print(TimeToFileName(GetFileModificationTime(a.modification)))
コメントをかく