开发者

Avoiding fragmentation when saving files to BlackBerry filesystem. Best practice?

In my application I need to save some file (a pdf) to the filesystem. My current method involves creating a directory for storing the files:

FileConnection fc = (FileConnection)Connector.open("file:///SDCard/BlackBerry/pdfs/");
    if (!fc.exists())
        fc.mkdir();
    fc.close();

I then write to the directory with my file:

 fc = (FileConnection)Connector.open("file:///SDCard/BlackBerry/pdfs/" + filename, Connector.READ_WRITE);
    开发者_如何学运维if (!fc.exists())
        fc.create();
    OutputStream outStream = fc.openOutputStream();
    outStream.write(pdf);
    outStream.close();
    fc.close();

This all works fine, and my pdf arrives in my created directory. My question is: will I run into trouble with the fact that I have hard coded a file path as my save destination. With the BlackBerry API is it possible to retrieve a writeable folder which exists on all models/configurations?


You can query the system for the available roots using FileSystemRegistry.listRoots(). Note that it is not guaranteed that there will be an sdcard, or that it will be visible even if there is one (when in mass storage mode, for instance). I think that the only root guaranteed to be on all devices is internal storage ("file:///Store").

There's (a little) more information here.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜