00001 using System;
00002 using IO = System.IO;
00003
00004 namespace Tamir.SharpSsh.java.io
00005 {
00009 public class FileOutputStream : OutputStream
00010 {
00011 IO.FileStream fs;
00012 public FileOutputStream(string file):this(file, false)
00013 {
00014 }
00015
00016 public FileOutputStream(File file):this(file.info.Name, false)
00017 {
00018 }
00019
00020 public FileOutputStream(string file, bool append)
00021 {
00022 if(append)
00023 fs = new IO.FileStream(file, IO.FileMode.Append);
00024 else
00025 fs = new IO.FileStream(file, IO.FileMode.Create);
00026 }
00027
00028 public FileOutputStream(File file, bool append):this(file.info.Name)
00029 {
00030 }
00031
00032 public override void Write(byte[] buffer, int offset, int count)
00033 {
00034 fs.Write(buffer, offset, count);
00035 }
00036
00037 public override void Flush()
00038 {
00039 fs.Flush();
00040 }
00041
00042 public override void Close()
00043 {
00044 fs.Close();
00045 }
00046
00047 public override bool CanSeek
00048 {
00049 get
00050 {
00051 return fs.CanSeek;
00052 }
00053 }
00054
00055 public override long Seek(long offset, IO.SeekOrigin origin)
00056 {
00057 return fs.Seek(offset, origin);
00058 }
00059 }
00060 }