OWFile
or to a OWFileDescriptor
.
Whether or not a file is available or may be created depends upon the underlying platform. This platform allows a file to be opened for writing by only one OWFileOutputStream
(or other file-writing object) at a time. In such situations the constructors in this class will fail if the file involved is already open. The 1-Wire File system must be formatted before use. Use OWFile:format to prepare a device or group of devices.
The 1-Wire device will only be written in the following situations
getFD()
and call the sync()
method of the OWFileDescriptor
until a SyncFailedException
is NOT thrown IOException
is thrown close()
finalize()
WARNING could deadlock if device not synced and inside beginExclusive/endExclusive block. Note that the 1-Wire File system can reside across multiple 1-Wire devices. In this case only one of the devices need be supplied to the constructor. Each device in a multi-device file system contains information to reacquire the entire list.
File and directory name limitations
Write to a 1-Wire file on device 'owd':
// create a 1-Wire file at root
OWFileOutputStream outstream = new OWFileOutputStream(owd, "DEMO.0");
// write the data (in a byte array data[])
outstream.write(data);
// get 1-Wire File descriptor to flush to device
OWFileDescriptor owfd = owfile.getFD();
// loop until sync is successful
do
{
try
{
owfd.sync();
done = true;
}
catch (SyncFailedException e)
{
// do something
...
done = false;
}
}
while (!done)
// close the stream to release system resources
outstream.close();
Public Member Functions | |
OWFileOutputStream (OneWireContainer owd, String name) throws OWFileNotFoundException | |
Creates an output file stream to write to the file with the specified name. | |
OWFileOutputStream (OneWireContainer[] owd, String name) throws OWFileNotFoundException | |
Creates an output file stream to write to the file with the specified name. | |
OWFileOutputStream (OneWireContainer owd, String name, boolean append) throws OWFileNotFoundException | |
Creates an output file stream to write to the file with the specified name . | |
OWFileOutputStream (OneWireContainer[] owd, String name, boolean append) throws OWFileNotFoundException | |
Creates an output file stream to write to the file with the specified name . | |
OWFileOutputStream (OWFile file) throws OWFileNotFoundException | |
Creates a file output stream to write to the file represented by the specified File object. | |
OWFileOutputStream (OWFileDescriptor fdObj) | |
Creates an output file stream to write to the specified file descriptor, which represents an existing connection to an actual file in the Filesystem. | |
void | write (int b) throws IOException |
Writes the specified byte to this file output stream. | |
void | write (byte b[]) throws IOException |
Writes b.length bytes from the specified byte array to this file output stream. | |
void | write (byte b[], int off, int len) throws IOException |
Writes len bytes from the specified byte array starting at offset off to this file output stream. | |
void | close () throws IOException |
Closes this file output stream and releases any system resources associated with this stream. | |
OWFileDescriptor | getFD () throws IOException |
Returns the file descriptor associated with this stream. | |
void | finalize () throws IOException |
Cleans up the connection to the file, and ensures that the close method of this file output stream is called when there are no more references to this stream. |
OWFileOutputStream | ( | OneWireContainer | owd, | |
String | name | |||
) | throws OWFileNotFoundException |
Creates an output file stream to write to the file with the specified name.
A new OWFileDescriptor
object is created to represent this file connection.
First, if there is a security manager, its checkWrite
method is called with name
as its argument.
If the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason then a FileNotFoundException
is thrown.
owd | OneWireContainer that this Filesystem resides on | |
name | the system-dependent filename |
FileNotFoundException | if the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason | |
SecurityException | if a security manager exists and its checkWrite method denies write access to the file. |
OWFileOutputStream | ( | OneWireContainer[] | owd, | |
String | name | |||
) | throws OWFileNotFoundException |
Creates an output file stream to write to the file with the specified name.
A new OWFileDescriptor
object is created to represent this file connection.
First, if there is a security manager, its checkWrite
method is called with name
as its argument.
If the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason then a FileNotFoundException
is thrown.
owd | array of OneWireContainers that this Filesystem resides on | |
name | the system-dependent filename |
FileNotFoundException | if the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason | |
SecurityException | if a security manager exists and its checkWrite method denies write access to the file. |
OWFileOutputStream | ( | OneWireContainer | owd, | |
String | name, | |||
boolean | append | |||
) | throws OWFileNotFoundException |
Creates an output file stream to write to the file with the specified name
.
If the second argument is true
, then bytes will be written to the end of the file rather than the beginning. A new OWFileDescriptor
object is created to represent this file connection.
First, if there is a security manager, its checkWrite
method is called with name
as its argument.
If the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason then a FileNotFoundException
is thrown.
owd | OneWireContainer that this Filesystem resides on | |
name | the system-dependent file name | |
append | if true , then bytes will be written to the end of the file rather than the beginning |
FileNotFoundException | if the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason. | |
SecurityException | if a security manager exists and its checkWrite method denies write access to the file. |
OWFileOutputStream | ( | OneWireContainer[] | owd, | |
String | name, | |||
boolean | append | |||
) | throws OWFileNotFoundException |
Creates an output file stream to write to the file with the specified name
.
If the second argument is true
, then bytes will be written to the end of the file rather than the beginning. A new OWFileDescriptor
object is created to represent this file connection.
First, if there is a security manager, its checkWrite
method is called with name
as its argument.
If the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason then a FileNotFoundException
is thrown.
owd | array of OneWireContainers that this Filesystem resides on | |
name | the system-dependent file name | |
append | if true , then bytes will be written to the end of the file rather than the beginning |
FileNotFoundException | if the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason. | |
SecurityException | if a security manager exists and its checkWrite method denies write access to the file. |
OWFileOutputStream | ( | OWFile | file | ) | throws OWFileNotFoundException |
Creates a file output stream to write to the file represented by the specified File
object.
A new OWFileDescriptor
object is created to represent this file connection.
First, if there is a security manager, its checkWrite
method is called with the path represented by the file
argument as its argument.
If the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason then a FileNotFoundException
is thrown.
file | the file to be opened for writing. |
FileNotFoundException | if the file exists but is a directory rather than a regular file, does not exist but cannot be created, or cannot be opened for any other reason | |
SecurityException | if a security manager exists and its checkWrite method denies write access to the file. |
OWFileOutputStream | ( | OWFileDescriptor | fdObj | ) |
Creates an output file stream to write to the specified file descriptor, which represents an existing connection to an actual file in the Filesystem.
First, if there is a security manager, its checkWrite
method is called with the file descriptor fdObj
argument as its argument.
fdObj | the file descriptor to be opened for writing. |
SecurityException | if a security manager exists and its checkWrite method denies write access to the file descriptor. |
void write | ( | int | b | ) | throws IOException |
Writes the specified byte to this file output stream.
Implements the write
method of OutputStream
.
b | the byte to be written. |
IOException | if an I/O error occurs. |
void write | ( | byte | b[] | ) | throws IOException |
Writes b.length
bytes from the specified byte array to this file output stream.
b | the data. |
IOException | if an I/O error occurs. |
void write | ( | byte | b[], | |
int | off, | |||
int | len | |||
) | throws IOException |
Writes len
bytes from the specified byte array starting at offset off
to this file output stream.
b | the data. | |
off | the start offset in the data. | |
len | the number of bytes to write. |
IOException | if an I/O error occurs. |
void close | ( | ) | throws IOException |
Closes this file output stream and releases any system resources associated with this stream.
This file output stream may no longer be used for writing bytes.
IOException | if an I/O error occurs. |
OWFileDescriptor getFD | ( | ) | throws IOException |
Returns the file descriptor associated with this stream.
OWFileDescriptor
object that represents the connection to the file in the Filesystem being used by this FileOutputStream
object.IOException | if an I/O error occurs. |
void finalize | ( | ) | throws IOException |
Cleans up the connection to the file, and ensures that the close
method of this file output stream is called when there are no more references to this stream.
IOException | if an I/O error occurs. |