2 * Copyright (C) 2014, United States Government, as represented by the
3 * Administrator of the National Aeronautics and Space Administration.
6 * The Java Pathfinder core (jpf-core) platform is licensed under the
7 * Apache License, Version 2.0 (the "License"); you may not use this file except
8 * in compliance with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0.
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
20 import java.nio.channels.FileChannel;
22 public class FileOutputStream extends OutputStream {
25 private FileChannel fc = null;
27 public FileOutputStream (String fname) throws FileNotFoundException {
29 fd = new FileDescriptor(fname, FileDescriptor.FD_WRITE);
30 } catch (IOException iox){
31 throw new FileNotFoundException(fname);
35 public FileOutputStream (File file) throws FileNotFoundException {
36 this( file.getAbsolutePath());
39 public FileOutputStream (FileDescriptor fd) {
43 public FileChannel getChannel() {
45 this.fc = new FileChannel(fd);
50 public FileDescriptor getFD() {
54 //--- our native peer methods
56 boolean open (String fname) {
57 // this sets the FileDescriptor from the peer side
62 public void write (int b) throws IOException {
67 public void write (byte[] buf, int off, int len) throws IOException {
68 fd.write(buf, off, len);
72 public void close () throws IOException {
77 public void flush () throws IOException {