diff options
author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-20 07:54:24 +0000 |
---|---|---|
committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-20 07:54:24 +0000 |
commit | ff0263c808951d22e7f0324fd28877cf4f6a1fab (patch) | |
tree | c99af8765e9410ed162e184496445f198dee0afc /libjava/java/io/RandomAccessFile.java | |
parent | 2653f9df5503bdf69f827ea82909a623484605a3 (diff) | |
download | ppe42-gcc-ff0263c808951d22e7f0324fd28877cf4f6a1fab.tar.gz ppe42-gcc-ff0263c808951d22e7f0324fd28877cf4f6a1fab.zip |
2003-03-20 Michael Koch <konqueror@gmx.de>
* java/io/FileInputStream.java
(getChannel): New implementation.
* java/io/FileOutputStream.java
(ch): New member variable.
(getChannel): Implemented.
* java/io/RandomAccessFile.java
(RandomAccessFile): Throws FileNotFoundException instead of
IOException.
(getChannel): New method.
(ch): New member variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64609 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/io/RandomAccessFile.java')
-rw-r--r-- | libjava/java/io/RandomAccessFile.java | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/libjava/java/io/RandomAccessFile.java b/libjava/java/io/RandomAccessFile.java index d0192829e83..32d26877ed3 100644 --- a/libjava/java/io/RandomAccessFile.java +++ b/libjava/java/io/RandomAccessFile.java @@ -38,6 +38,9 @@ exception statement from your version. */ package java.io; +import java.nio.channels.FileChannel; +import gnu.java.nio.FileChannelImpl; + /** * @author Tom Tromey <tromey@cygnus.com> * @date September 25, 1998 @@ -78,7 +81,8 @@ public class RandomAccessFile implements DataOutput, DataInput return fd.length(); } - public RandomAccessFile (String fileName, String mode) throws IOException + public RandomAccessFile (String fileName, String mode) + throws FileNotFoundException { int fdmode; if (mode.compareTo ("r") == 0) @@ -101,7 +105,7 @@ public class RandomAccessFile implements DataOutput, DataInput in = new DataInputStream (new FileInputStream (fd)); } - public RandomAccessFile (File file, String mode) throws IOException + public RandomAccessFile (File file, String mode) throws FileNotFoundException { this (file.getPath(), mode); } @@ -276,10 +280,21 @@ public class RandomAccessFile implements DataOutput, DataInput out.writeUTF(s); } + public FileChannel getChannel () + { + synchronized (this) + { + if (ch == null) + ch = new FileChannelImpl (fd, true, this); + + return ch; + } + } // The underlying file. private FileDescriptor fd; // The corresponding input and output streams. private DataOutputStream out; private DataInputStream in; + private FileChannel ch; } |