How to read text file from SD Card

2006-01-08 Thread granbajo
I am trying to read a text file from the SD card.  Any pointers / code samples 
would be very handy.

I have been trying to read through the documentation and I am really confused 
as to what I need to do... (VFS, Expansion Manager Volumes arghhh... it should 
be as easu as FileOpen!!)

Thanks
Carlos
-- 
For information on using the PalmSource Developer Forums, or to unsubscribe, 
please see http://www.palmos.com/dev/support/forums/


Re: How to read text file from SD Card

2006-01-08 Thread Aaron Ardiri
On 1/8/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> I am trying to read a text file from the SD card.  Any pointers / code samples
> would be very handy. I have been trying to read through the documentation
> and I am really confused as to what I need to do... (VFS, Expansion Manager
> Volumes arghhh... it should be as easu as FileOpen!!)

http://www.palmos.com/dev/dl/dl_codesamples/
http://www.palmos.com/dev/dl/dl_codesamples/sample_features.html
http://www.palmos.com/dev/dl/dl_codesamples/expansion_samples.html

and... some code

http://kb.palmsource.com/cgi-bin/palmsource.cfg/php/enduser/std_adp.php?p_faqid=174

you have to use the expansion manager to obtain a volume. when you have
a volume; you can then open a file quite easily. its not FileOpen,
but, VFSFileOpen
(below, is a stripped chunk of a functino)

static Err HandleCardFile(UInt16 volRefNum, Char *fileName)
{
FileRef ref=0;
Err err=0;

err = VFSFileOpen(volRefNum, fileName, vfsModeRead, &ref);
if (err) return err;

... VFSFileSeek(ref, vfsOriginBeginning, resOffset);
... VFSFileRead(ref, resLen, mybuffer, &numBytesRead);

if (ref) VFSFileClose(ref);
return err;
}

to get a handle on the volume:

UInt16 volRefNum;
UInt32 volIterator;

volIterator = vfsIteratorStart;
while (volIterator != vfsIteratorStop)
{
err = VFSVolumeEnumerate(&volRefNum, &volIterator);

if (err == errNone)
// volRefNum = valid!!
else
volIterator = vfsIteratorStop;  // handle error 
by breaking out of the loop
}

now; there may be multiple volumes on a device; so, you need to do a little
extra checking to make sure you have the right one.

--
// Aaron Ardiri

-- 
For information on using the PalmSource Developer Forums, or to unsubscribe, 
please see http://www.palmos.com/dev/support/forums/


Re: How to read text file from SD Card

2006-01-08 Thread Logan Shaw

[EMAIL PROTECTED] wrote:

I am trying to read a text file from the SD card.  Any pointers / code
samples would be very handy.

I have been trying to read through the documentation and I am really
confused as to what I need to do... (VFS, Expansion Manager Volumes
arghhh... it should be as easu as FileOpen!!)


No, FileOpen() is for File Streams, which are the pseudo-files that
are encapsulated in databases that are on board the device.
FileOpen() can never be used to open files on a VFS volume.  For
that, you want VFSFileOpen(), which is a completely separate
function.

  - Logan

--
For information on using the PalmSource Developer Forums, or to unsubscribe, 
please see http://www.palmos.com/dev/support/forums/