HTML5を業務アプリで使うための勉強会 # 5

この回はFile System APIでした。 FileReader、FileWriterなど。 コールバックを大量を使ってやりとりするので、ちょっと大変そうです。
0
taknb2nch @taknb2nch

本日も倉式珈琲店 青江店で19:00から行います。到着した方から場所の確保をお願いします。混雑状況次第で場所が変更になる可能性があります。 #gdgchugoku / HTML5を業務アプリで使うための勉強会 #5 http://t.co/Si77jlRIul #zusaar

2013-04-19 15:38:13
taknb2nch @taknb2nch

ギリギリになるかもしれないので、先に着いた方は席の確保をお願いします。 #gdgchugoku

2013-04-19 18:02:21
taknb2nch @taknb2nch

入ってすぐの場所を確保しています。 #gdgchugoku

2013-04-19 18:51:12
パトラッシュ@中間管理職 @patorash

BlogBuilder。depricatedなのか? appendメソッドで突っ込んでいく。getBlobメソッドで取れる。しかし、 new Blobで同じことができる? #gdgchugoku

2013-04-19 19:20:20
パトラッシュ@中間管理職 @patorash

FileSaver interface。イベントハンドラが色々ある。File Readerのときと似た感じ。 書き込み開始、どこまで書いたか、終わり、エラー発生時などなど。 #gdgchugoku

2013-04-19 19:21:54
パトラッシュ@中間管理職 @patorash

File Writer interface。File Saverを継承してる。属性にpositionとlength。positionは現在の書き込み位置。lengthはファイルの長さ。seekメソッドで書き込み場所を移動。writeメソッドで書き込み。 #gdgchugoku

2013-04-19 19:24:14
パトラッシュ@中間管理職 @patorash

File System API。FileSystem, LocalFileSystem, Entry, FileEntry, DirectoryEntry,DirectoryReader,その他、○○Syncあり。それとコールバックいっぱい。 #gdgchugoku

2013-04-19 19:27:56
パトラッシュ@中間管理職 @patorash

FileSystem interface。rootは、ファイルを保存する際の基準となるDirectoryEntry。ブラウザに決められてる? #gdgchugoku

2013-04-19 19:32:15
パトラッシュ@中間管理職 @patorash

Windowsならば、ユーザーディレクトリのAppData/local/Google/chromeとか。らしい。 #gdgchugoku

2013-04-19 19:33:27
パトラッシュ@中間管理職 @patorash

普段使うのはLocalFileSystem interface。requestFileSystemメソッドでファイルシステムを取る。その際にコールバックが呼ばれるのでそっちで処理する。 #gdgchugoku

2013-04-19 19:35:13
パトラッシュ@中間管理職 @patorash

typeにTEMPとPERSISTENT。TEMPはブラウザが閉じるまでとか、ブラウザの裁量で破棄される。PERSISTENTはブラウザを閉じても残るが、ユーザーの許可が必要。 #gdgchugoku

2013-04-19 19:39:04
パトラッシュ@中間管理職 @patorash

サンプルを動かしてみる。Chromeでしかうごかなさそう?FileSystemをリクエストして、コールバックを書いていくみたい。 #gdgchugoku

2013-04-19 19:46:19
パトラッシュ@中間管理職 @patorash

Entry interface。ファイルの情報を扱うやつ。それを継承したFileEntry interface。createWtiterメソッドを呼んで、コールバックで書き込み。コールバックの嵐になるらしい。 #gdgchugoku

2013-04-19 19:49:30
パトラッシュ@中間管理職 @patorash

fileメソッドを呼ぶと、Fileクラスが返ってくる。それを使ってファイルとして扱う。 #gdgchugoku

2013-04-19 19:50:39
パトラッシュ@中間管理職 @patorash

まぁこいつは今のところChromeでしか動かないAPI。 #gdgchugoku

2013-04-19 20:01:03
パトラッシュ@中間管理職 @patorash

File System APIは面倒くさそうだから、ライブラリ欲しいねという感じ。 #gdgchugoku

2013-04-19 20:07:06
パトラッシュ@中間管理職 @patorash

オフラインの場合に一時的にバックアップを取ったるするのにつかえるかもしれない。 #gdgchugoku

2013-04-19 20:08:37