Sha256: f56b78988bceb51c5b009994feef58d8e57f13e8e45a4c9384eb95020444eca8

Contents?: true

Size: 802 Bytes

Versions: 2

Compression:

Stored size: 802 Bytes

Contents

import java.io.PrintStream
import java.io.FileOutputStream
import java.io.InputStreamReader
import java.io.FileInputStream

module Kernel

	def jopen(filename, mode, encode = "ISO-8859-1")
		stream = nil
		if mode == "r"
			stream = read_stream(filename, encode)
		elsif mode == "w"
			stream = write_stream(filename, encode)
		end
		if block_given?
			begin
				yield stream
			ensure
				stream.close
			end
		else
			return stream
		end
	end

	def write_stream(filename, encode = "ISO-8859-1")
		PrintStream.new(FileOutputStream.new(filename), false, encode)
	end
	
	def read_stream(filename, encode = "ISO-8859-1")
		InputStreamReader.new(FileInputStream.new(filename), encode)
	end
	
end

class PrintStream

	def <<(obj)
		self.print(obj)
		self
	end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
simple_view-0.0.2 lib/core-ext/jopen.rb
simple_view-0.0.1 lib/core-ext/jopen.rb