Package de.bsvrz.dav.daf.util
Class BufferedRandomAccessFile
java.lang.Object
de.bsvrz.dav.daf.util.FileAccess
de.bsvrz.dav.daf.util.BufferedRandomAccessFile
- All Implemented Interfaces:
java.io.Closeable,java.io.DataInput,java.io.DataOutput,java.lang.AutoCloseable,java.nio.channels.ByteChannel,java.nio.channels.Channel,java.nio.channels.ReadableByteChannel,java.nio.channels.SeekableByteChannel,java.nio.channels.WritableByteChannel
public class BufferedRandomAccessFile extends FileAccess
Implementierung eines gepufferten
RandomAccessFile. Diese Klasse implementiert die Interfaces DataInput, DataOutput und ByteChannel und unterstützt alle wesentlichen Methoden eines RandomAccessFiles
Diese Klasse ist (anders als FileChannel) nicht für die Verwendung durch mehrere unsynchronisierte Threads geeignet.
-
Field Summary
Fields Modifier and Type Field Description protected java.io.InputStream_rawInStreamungepufferter EingabeStreamprotected java.io.OutputStream_rawOutStreamungepufferter AusgabeStreamFields inherited from class de.bsvrz.dav.daf.util.FileAccess
_bufferSize, _dataInStream, _dataOutStream, _position, defaultBufferSize -
Constructor Summary
Constructors Constructor Description BufferedRandomAccessFile(java.io.File file)Erstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile.BufferedRandomAccessFile(java.io.File file, int bufferSize)Erstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile.BufferedRandomAccessFile(java.io.File file, java.lang.String mode)Erstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile.BufferedRandomAccessFile(java.io.File file, java.lang.String mode, int bufferSize)Erstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile. -
Method Summary
Modifier and Type Method Description java.nio.channels.FileChannelgetChannel()Gibt einen gültigen FileChannel zurück, mit dem die Klasse die Datei manipulieren kann.protected java.io.DataInputStreamgetDataInStream()Gibt einen DataInputStream zum Lesen zurückprotected java.io.DataOutputStreamgetDataOutStream()Gibt einen DataOutputStream zum Schreiben zurückbooleanisOpen()BufferedRandomAccessFileposition(long newPosition)BufferedRandomAccessFiletruncate(long size)Methods inherited from class de.bsvrz.dav.daf.util.FileAccess
close, flush, flushInStream, flushOutStream, getFilePointer, length, position, read, read, read, read, readBoolean, readByte, readChar, readDouble, readFloat, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedShort, readUTF, seek, setLength, size, skip, skipBytes, toString, write, write, write, write, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeDouble, writeFloat, writeInt, writeLong, writeShort, writeUTFMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Field Details
-
_rawInStream
protected final java.io.InputStream _rawInStreamungepufferter EingabeStream -
_rawOutStream
protected final java.io.OutputStream _rawOutStreamungepufferter AusgabeStream
-
-
Constructor Details
-
BufferedRandomAccessFile
public BufferedRandomAccessFile(java.io.File file) throws java.io.FileNotFoundExceptionErstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile.- Parameters:
file- Datei- Throws:
java.io.FileNotFoundException- Falls Datei nicht gefunden
-
BufferedRandomAccessFile
public BufferedRandomAccessFile(java.io.File file, int bufferSize) throws java.io.FileNotFoundExceptionErstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile.- Parameters:
file- DateibufferSize- Größe des Lese und Schreibpuffers in Byte- Throws:
java.io.FileNotFoundException- Falls Datei nicht gefunden
-
BufferedRandomAccessFile
public BufferedRandomAccessFile(java.io.File file, java.lang.String mode) throws java.io.FileNotFoundExceptionErstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile.- Parameters:
file- Dateimode- "r" wenn nur gelesen werden soll, "rw" zum Lesen und schreiben. SieheRandomAccessFile- Throws:
java.io.FileNotFoundException- Falls Datei nicht gefunden
-
BufferedRandomAccessFile
public BufferedRandomAccessFile(java.io.File file, java.lang.String mode, int bufferSize) throws java.io.FileNotFoundExceptionErstellt ein neues gepuffertes BufferedFile als gepufferten Ersatz einesRandomAccessFile.- Parameters:
file- Dateimode- "r" wenn nur gelesen werden soll, "rw" zum Lesen und schreiben. SieheRandomAccessFilebufferSize- Größe des Lese und Schreibpuffers in Byte- Throws:
java.io.FileNotFoundException- Falls Datei nicht gefunden
-
-
Method Details
-
getDataOutStream
protected java.io.DataOutputStream getDataOutStream()Description copied from class:FileAccessGibt einen DataOutputStream zum Schreiben zurück- Specified by:
getDataOutStreamin classFileAccess- Returns:
- DataOutputStream
-
getDataInStream
protected java.io.DataInputStream getDataInStream() throws java.io.IOExceptionDescription copied from class:FileAccessGibt einen DataInputStream zum Lesen zurück- Specified by:
getDataInStreamin classFileAccess- Returns:
- DataInputStream
- Throws:
java.io.IOException
-
isOpen
public boolean isOpen()- Specified by:
isOpenin interfacejava.nio.channels.Channel- Specified by:
isOpenin classFileAccess
-
getChannel
public java.nio.channels.FileChannel getChannel()Description copied from class:FileAccessGibt einen gültigen FileChannel zurück, mit dem die Klasse die Datei manipulieren kann.- Specified by:
getChannelin classFileAccess- Returns:
- einen gültigen FileChannel
-
position
- Specified by:
positionin interfacejava.nio.channels.SeekableByteChannel- Overrides:
positionin classFileAccess- Throws:
java.io.IOException- See Also:
FileChannel.position(long)
-
truncate
- Specified by:
truncatein interfacejava.nio.channels.SeekableByteChannel- Overrides:
truncatein classFileAccess- Throws:
java.io.IOException- See Also:
FileChannel.truncate(long)
-