Class: File

Inherits:
Object show all
Defined in:
lib/open_classes/file.rb

Overview

File

Class Method Summary collapse

Class Method Details

.insert_bom(input_filename, output_filename = nil) ⇒ Object

insert BOM to UTF-8 File

this method’s main purpose is ‘UTF-8 Excel CSV File’.

File.insert_bom(“input.csv”, “output.csv”) # => output bommed text to output.csv File.insert_bom(“input.csv”) # => output bommed text to input.csv



11
12
13
14
15
16
17
18
19
20
21
# File 'lib/open_classes/file.rb', line 11

def self.insert_bom(input_filename, output_filename = nil)
  src = File.read(input_filename)
  output_filename ||= input_filename
  File.open(output_filename, 'w:UTF-8') do |f|
    src = '   ' + src
    src.setbyte(0, 0xEF)
    src.setbyte(1, 0xBB)
    src.setbyte(2, 0xBF)
    f.print src
  end
end