別のキーワード
種類
- インスタンスメソッド (138)
- 特異メソッド (115)
- クラス (60)
クラス
-
Encoding
:: Converter (36) - IO (48)
- String (148)
- Symbol (21)
キーワード
- CompatibilityError (12)
- ConverterNotFoundError (12)
- InvalidByteSequenceError (12)
- String (12)
- UndefinedConversionError (12)
- casecmp (24)
- casecmp? (18)
-
each
_ codepoint (24) - encode! (24)
- encoding (12)
-
for
_ fd (12) - new (79)
- open (24)
検索結果
先頭5件
-
String
# encode(**options) -> String (18135.0) -
self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
...以上細かい指定を行いたい場合は、Encoding::Converter#convert を用いましょう。
//emlist[例][ruby]{
#coding:UTF-8
s = "いろは"
s.encode("EUC-JP")
s.encode(Encoding::UTF_8)
# U+00B7 MIDDLE DOT, U+2014 EM DASH は対応する文字が Windows-31J には
# 存在しないの......ようとすると Encoding::UndefinedConversionError が発生する
str = "\u00b7\u2014"
str.encode("Windows-31J", fallback: { "\u00b7" => "\xA5".force_encoding("Windows-31J"),
"\u2014" => "\x81\x5C".force_encoding("Windows-31J") })
//}
@see String#encode!... -
String
# encode(encoding , **options) -> String (18135.0) -
self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
...以上細かい指定を行いたい場合は、Encoding::Converter#convert を用いましょう。
//emlist[例][ruby]{
#coding:UTF-8
s = "いろは"
s.encode("EUC-JP")
s.encode(Encoding::UTF_8)
# U+00B7 MIDDLE DOT, U+2014 EM DASH は対応する文字が Windows-31J には
# 存在しないの......ようとすると Encoding::UndefinedConversionError が発生する
str = "\u00b7\u2014"
str.encode("Windows-31J", fallback: { "\u00b7" => "\xA5".force_encoding("Windows-31J"),
"\u2014" => "\x81\x5C".force_encoding("Windows-31J") })
//}
@see String#encode!... -
String
# encode(encoding , from _ encoding , **options) -> String (18135.0) -
self を指定したエンコーディングに変換した文字列を作成して返します。引数 を2つ与えた場合、第二引数は変換元のエンコーディングを意味します。さもな くば self のエンコーディングが使われます。 無引数の場合は、Encoding.default_internal が nil でなければそれが変換先のエンコーディングになり、かつ :invalid => :replace と :undef => :replace が指定されたと見なされ、nil ならば変換は行われません。
...以上細かい指定を行いたい場合は、Encoding::Converter#convert を用いましょう。
//emlist[例][ruby]{
#coding:UTF-8
s = "いろは"
s.encode("EUC-JP")
s.encode(Encoding::UTF_8)
# U+00B7 MIDDLE DOT, U+2014 EM DASH は対応する文字が Windows-31J には
# 存在しないの......ようとすると Encoding::UndefinedConversionError が発生する
str = "\u00b7\u2014"
str.encode("Windows-31J", fallback: { "\u00b7" => "\xA5".force_encoding("Windows-31J"),
"\u2014" => "\x81\x5C".force_encoding("Windows-31J") })
//}
@see String#encode!... -
String
# encode!(encoding , from _ encoding , options = nil) -> self (6128.0) -
self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ 与えた場合、第二引数は変換元のエンコーディングを意味します。そうでない場合は self のエンコーディングが使われます。変換後の self を返します。
...す。
@param from_encoding 変換元のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@return 変換後のself
//emlist[例][ruby]{
#coding:UTF-8
s = "いろは"
s.encode!("EUC-JP")
s.encode!(Encoding::UTF_8)
//}
@see String#encode... -
String
# encode!(encoding , options = nil) -> self (6128.0) -
self を指定したエンコーディングに変換し、自身を置き換えます。引数を2つ 与えた場合、第二引数は変換元のエンコーディングを意味します。そうでない場合は self のエンコーディングが使われます。変換後の self を返します。
...す。
@param from_encoding 変換元のエンコーディングを表す文字列か Encoding オブジェクトを指定します。
@return 変換後のself
//emlist[例][ruby]{
#coding:UTF-8
s = "いろは"
s.encode!("EUC-JP")
s.encode!(Encoding::UTF_8)
//}
@see String#encode... -
String (104.0)
-
文字列のクラスです。 ヌル文字を含む任意のバイト列を扱うことができます。 文字列の長さにはメモリ容量以外の制限はありません。
...テラルを使って生成します。
以下に文字列リテラルの例をいくつか示します。
//emlist[文字列リテラルの例][ruby]{
'str\\ing' # シングルクオート文字列 (エスケープシーケンスがほぼ無効)
"string\n" # ダブルクオート文字列 (エ......用も可能
<<-End
この行はヒアドキュメント (終端記号をインデントできる)
End
//}
===[a:mutable] 破壊的な変更
Ruby の String クラスは mutable です。
つまり、オブジェクト自体を破壊的に変更できます。
「破壊的な変更」とは......の文字を破壊的に大文字へ変更する
String#upcase! メソッドの使用例を以下に示します。
//emlist[例:String#upcase!][ruby]{
a = "string"
b = a
a.upcase!
p a # => "STRING"
p b # => "STRING"
//}
この例では、a に対してメソッドを呼んだにも関わら......ト、ダブルクオートとの併用も可能
<<~End
この行のインデントは無視される
End
//}
===[a:mutable] 破壊的な変更
Ruby の String クラスは mutable です。
つまり、オブジェクト自体を破壊的に変更できます。
「破壊的な変更」とは... -
IO
. for _ fd(fd , mode = "r" , **opts) -> IO (26.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
...になります。
* :autoclose 偽を渡すと close時/GCでのファイナライザ呼出時に fd を close しません。
また、String#encode で説明されている :invalid => :replace などの
変換オプションも指定することができます。外部エンコーディング......よる読み込みモードでのファイルオープン][ruby]{
io = IO.new(IO.sysopen("testfile"))
io.class # => IO
io.close
//}
//emlist[例:IO.for_fd による読み込み・バイナリモードでのファイルオープン][ruby]{
IO.binwrite("testfile", "\xBF\xAA\x16\x04.\b\xCB\x12\xACoeQ\......xFDv2\xCF9+\x81\x18")
io = IO.for_fd(IO.sysopen("testfile"), "r", binmode: true)
io.class # => IO
io.binmode? # => true
io.close
//}
//emlist[例:IO.open によるファイルオープン][ruby]{
IO.open(IO.sysopen("testfile")) { |io| p io.class } # => IO
//}......fd を close しません。
* :path 文字列を渡すと、IO#path メソッドがその値を返すようになります。
また、String#encode で説明されている :invalid => :replace などの
変換オプションも指定することができます。外部エンコーディング... -
IO
. new(fd , mode = "r" , **opts) -> IO (26.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
...になります。
* :autoclose 偽を渡すと close時/GCでのファイナライザ呼出時に fd を close しません。
また、String#encode で説明されている :invalid => :replace などの
変換オプションも指定することができます。外部エンコーディング......よる読み込みモードでのファイルオープン][ruby]{
io = IO.new(IO.sysopen("testfile"))
io.class # => IO
io.close
//}
//emlist[例:IO.for_fd による読み込み・バイナリモードでのファイルオープン][ruby]{
IO.binwrite("testfile", "\xBF\xAA\x16\x04.\b\xCB\x12\xACoeQ\......xFDv2\xCF9+\x81\x18")
io = IO.for_fd(IO.sysopen("testfile"), "r", binmode: true)
io.class # => IO
io.binmode? # => true
io.close
//}
//emlist[例:IO.open によるファイルオープン][ruby]{
IO.open(IO.sysopen("testfile")) { |io| p io.class } # => IO
//}......fd を close しません。
* :path 文字列を渡すと、IO#path メソッドがその値を返すようになります。
また、String#encode で説明されている :invalid => :replace などの
変換オプションも指定することができます。外部エンコーディング... -
IO
. open(fd , mode = "r" , **opts) -> IO (26.0) -
オープン済みのファイルディスクリプタ fd に対する新しい IO オブジェクトを生成して返します。
...になります。
* :autoclose 偽を渡すと close時/GCでのファイナライザ呼出時に fd を close しません。
また、String#encode で説明されている :invalid => :replace などの
変換オプションも指定することができます。外部エンコーディング......よる読み込みモードでのファイルオープン][ruby]{
io = IO.new(IO.sysopen("testfile"))
io.class # => IO
io.close
//}
//emlist[例:IO.for_fd による読み込み・バイナリモードでのファイルオープン][ruby]{
IO.binwrite("testfile", "\xBF\xAA\x16\x04.\b\xCB\x12\xACoeQ\......xFDv2\xCF9+\x81\x18")
io = IO.for_fd(IO.sysopen("testfile"), "r", binmode: true)
io.class # => IO
io.binmode? # => true
io.close
//}
//emlist[例:IO.open によるファイルオープン][ruby]{
IO.open(IO.sysopen("testfile")) { |io| p io.class } # => IO
//}......fd を close しません。
* :path 文字列を渡すと、IO#path メソッドがその値を返すようになります。
また、String#encode で説明されている :invalid => :replace などの
変換オプションも指定することができます。外部エンコーディング...