Sha256: 31b6574e8af49cf7768ff9c6c7a775eaca895c7996a868111758b46046f6d1e3

Contents?: true

Size: 913 Bytes

Versions: 7

Compression:

Stored size: 913 Bytes

Contents

class File

  # Cleans up a filename to ensure it will work on filesystem.
  #
  #  CREDIT: George Moschovitis

  def self.sanitize(filename)
    filename = File.basename(filename.gsub("\\", "/")) # work-around for IE
    filename.gsub!(/[^a-zA-Z0-9\.\-\+_]/,"_")
    filename = "_#{filename}" if filename =~ /^\.+$/
    filename
  end

  # Read in a file as binary data.
  #
  #  CREDIT: George Moschovitis

  def self.read_binary(fname)
    open(fname, 'rb') {|f|
      return f.read
    }
  end

  # Reads in a file, removes blank lines and remarks
  # (lines starting with '#') and then returns
  # an array of all the remaining lines.
  #
  #   CREDIT: Trans

  def self.read_list(filepath, chomp_string='')
    farr = nil
    farr = read(filepath).split("\n")
    farr.collect! { |line|
      l = line.strip.chomp(chomp_string)
      (l.empty? or l[0,1] == '#') ? nil : l
    }
    farr.compact
  end

end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
facets-2.4.0 lib/facets/file/read.rb
facets-2.4.1 lib/facets/file/read.rb
facets-2.4.2 lib/core/facets/file/read.rb
facets-2.4.3 lib/core/facets/file/read.rb
facets-2.4.4 lib/core/facets/file/read.rb
facets-2.4.5 lib/core/facets/file/read.rb
mack-facets-0.8.2 lib/gems/facets-2.4.5/lib/core/facets/file/read.rb