summaryrefslogtreecommitdiff
path: root/doc/string/force_encoding.rdoc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/string/force_encoding.rdoc')
-rw-r--r--doc/string/force_encoding.rdoc21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/string/force_encoding.rdoc b/doc/string/force_encoding.rdoc
new file mode 100644
index 0000000000..a509e67f80
--- /dev/null
+++ b/doc/string/force_encoding.rdoc
@@ -0,0 +1,21 @@
+Changes the encoding of +self+ to the given +encoding+,
+which may be a string encoding name or an Encoding object;
+does not change the underlying bytes;
+returns self:
+
+ s = 'łał'
+ s.bytes # => [197, 130, 97, 197, 130]
+ s.encoding # => #<Encoding:UTF-8>
+ s.force_encoding('ascii') # => "\xC5\x82a\xC5\x82"
+ s.encoding # => #<Encoding:US-ASCII>
+ s.valid_encoding? # => true
+ s.bytes # => [197, 130, 97, 197, 130]
+
+Makes the change even if the given +encoding+ is invalid
+for +self+ (as is the change above):
+
+ s.valid_encoding? # => false
+
+See {Encodings}[rdoc-ref:encodings.rdoc].
+
+Related: see {Modifying}[rdoc-ref:String@Modifying].