Class: Encoding
Defined Under Namespace
Classes: CompatibilityError, Converter, ConverterNotFoundError, InvalidByteSequenceError, UndefinedConversionError
Class Method Summary (collapse)
-
+ aliases
Returns the hash of available encoding alias and original encoding name.
- + compatible?
-
+ default_external
Returns default external encoding.
-
+ default_external=
Sets default external encoding.
-
+ default_external
Returns default external encoding.
-
+ default_external=
Sets default external encoding.
-
+ find
Search the encoding with specified name.
-
+ list
Returns the list of loaded encodings.
-
+ name_list
Returns the list of available encoding names.
Instance Method Summary (collapse)
-
- ascii_compatible?
Returns whether ASCII-compatible or not.
-
- dummy?
Returns true for dummy encodings.
-
- inspect
Returns a string which represents the encoding for programmers.
-
- name
Returns the name of the encoding.
-
- names
Returns the list of name and aliases of the encoding.
-
- name
Returns the name of the encoding.
Methods inherited from NSObject
#!, #!=, #!~, #, #==, #===, #=~, #Rational, #__callee__, #__method__, #__send__, #__type__, `, alloc, allocWithZone:, #autoContentAccessingProxy, autoload, autoload?, autorelease_pool, #awakeAfterUsingCoder:, binding, block_given?, caller, cancelPreviousPerformRequestsWithTarget:, cancelPreviousPerformRequestsWithTarget:selector:object:, catch, class, classFallbacksForKeyedArchiver, #classForCoder, #classForKeyedArchiver, classForKeyedUnarchiver, #clone, conformsToProtocol:, #copy, copyWithZone:, #dealloc, #define_singleton_method, description, display, #doesNotRecognizeSelector:, #dup, #enum_for, #eql?, #equal?, #extend, fail, #finalize, format, #forwardInvocation:, #forwardingTargetForSelector:, framework, #freeze, #frozen?, getpass, gets, global_variables, #init, initialize, #initialize_clone, #initialize_copy, #initialize_dup, instanceMethodForSelector:, instanceMethodSignatureForSelector:, #instance_eval, #instance_exec, #instance_of?, #instance_variable_defined?, #instance_variable_get, #instance_variable_set, #instance_variables, instancesRespondToSelector:, isSubclassOfClass:, #is_a?, iterator?, #kind_of?, lambda, load, load_bridge_support_file, load_plist, local_variables, loop, #method, #methodForSelector:, #methodSignatureForSelector:, #methods, #mutableCopy, mutableCopyWithZone:, new, #nil?, open, p, #performSelector:onThread:withObject:waitUntilDone:, #performSelector:onThread:withObject:waitUntilDone:modes:, #performSelector:withObject:afterDelay:, #performSelector:withObject:afterDelay:inModes:, #performSelectorInBackground:withObject:, #performSelectorOnMainThread:withObject:waitUntilDone:, #performSelectorOnMainThread:withObject:waitUntilDone:modes:, print, printf, #private_methods, proc, #protected_methods, #public_method, #public_methods, #public_send, putc, puts, raise, rand, readline, readlines, #replacementObjectForCoder:, #replacementObjectForKeyedArchiver:, require, resolveClassMethod:, resolveInstanceMethod:, #respond_to?, #respond_to_missing?, select, #send, setVersion:, #singleton_methods, sprintf, srand, superclass, #taint, #tainted?, #tap, test, throw, #to_plist, trace_var, trap, #trust, #untaint, untrace_var, #untrust, #untrusted?, version
Constructor Details
This class inherits a constructor from NSObject
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class NSObject
Class Method Details
+ (Object) aliases
Returns the hash of available encoding alias and original encoding name.
Encoding.aliases
#=> {"BINARY"=>"ASCII-8BIT", "ASCII"=>"US-ASCII", "ANSI_X3.4-1986"=>"US-ASCII",
"SJIS"=>"Shift_JIS", "eucJP"=>"EUC-JP", "CP932"=>"Windows-31J"}
+ (Boolean) compatible?
+ (Encoding) default_external
Returns default external encoding.
The default external encoding is used by default for strings created from the following locations:
-
CSV
-
File data read from disk
-
SDBM
-
StringIO
-
Zlib::GzipReader
-
Zlib::GzipWriter
-
String#inspect
-
Regexp#inspect
While strings created from these locations will have this encoding, the encoding may not be valid. Be sure to check String#valid_encoding?.
File data written to disk will be transcoded to the default external encoding when written.
The default external encoding is initialized by the locale or -E option.
+ (Object) default_external=(enc)
Sets default external encoding. You should not set Encoding::default_external in ruby code as strings created before changing the value may have a different encoding from strings created after thevalue was changed., instead you should use ruby -E to invoke ruby with the correct default_external.
See Encoding::default_external for information on how the default external encoding is used.
+ (Encoding) default_external
Returns default external encoding.
The default external encoding is used by default for strings created from the following locations:
-
CSV
-
File data read from disk
-
SDBM
-
StringIO
-
Zlib::GzipReader
-
Zlib::GzipWriter
-
String#inspect
-
Regexp#inspect
While strings created from these locations will have this encoding, the encoding may not be valid. Be sure to check String#valid_encoding?.
File data written to disk will be transcoded to the default external encoding when written.
The default external encoding is initialized by the locale or -E option.
+ (Object) default_external=(enc)
Sets default external encoding. You should not set Encoding::default_external in ruby code as strings created before changing the value may have a different encoding from strings created after thevalue was changed., instead you should use ruby -E to invoke ruby with the correct default_external.
See Encoding::default_external for information on how the default external encoding is used.
+ (Encoding) find(string) + (Encoding) find(symbol)
Search the encoding with specified name. name should be a string or symbol.
Encoding.find("US-ASCII") #=> #<Encoding:US-ASCII>
Encoding.find(:Shift_JIS) #=> #<Encoding:Shift_JIS>
Names which this method accept are encoding names and aliases including following special aliases
"external" |
default external encoding |
"internal" |
default internal encoding |
"locale" |
locale encoding |
"filesystem" |
filesystem encoding |
An ArgumentError is raised when no encoding with name. Only Encoding.find("internal") however returns nil when no encoding named "internal", in other words, when Ruby has no default internal encoding.
+ (Array) list
Returns the list of loaded encodings.
Encoding.list
#=> [#<Encoding:ASCII-8BIT>, #<Encoding:UTF-8>,
#<Encoding:ISO-2022-JP (dummy)>]
Encoding.find("US-ASCII")
#=> #<Encoding:US-ASCII>
Encoding.list
#=> [#<Encoding:ASCII-8BIT>, #<Encoding:UTF-8>,
#<Encoding:US-ASCII>, #<Encoding:ISO-2022-JP (dummy)>]
+ (Array) name_list
Returns the list of available encoding names.
Encoding.name_list
#=> ["US-ASCII", "ASCII-8BIT", "UTF-8",
"ISO-8859-1", "Shift_JIS", "EUC-JP",
"Windows-31J",
"BINARY", "CP932", "eucJP"]
Instance Method Details
- (Boolean) ascii_compatible?
Returns whether ASCII-compatible or not.
Encoding::UTF_8.ascii_compatible? #=> true
Encoding::UTF_16BE.ascii_compatible? #=> false
- (Boolean) dummy?
Returns true for dummy encodings. A dummy encoding is an encoding for which character handling is not properly implemented. It is used for stateful encodings.
Encoding::ISO_2022_JP.dummy? #=> true
Encoding::UTF_8.dummy? #=> false
- (String) inspect
Returns a string which represents the encoding for programmers.
Encoding::UTF_8.inspect #=> "#<Encoding:UTF-8>"
Encoding::ISO_2022_JP.inspect #=> "#<Encoding:ISO-2022-JP (dummy)>"
- (String) name
Returns the name of the encoding.
Encoding::UTF_8.name #=> "UTF-8"
- (Array) names
Returns the list of name and aliases of the encoding.
Encoding::WINDOWS_31J.names #=> ["Windows-31J", "CP932", "csWindows31J"]
- (String) name
Returns the name of the encoding.
Encoding::UTF_8.name #=> "UTF-8"