[#49838] rubyでfloat(32bit浮動小数点)の数値をHEX表示する手法は? — junichirou tahara <taharajunichirou@...>

anh0YWhhcmHjgajnlLPjgZfjgb7jgZnvvI4NCuePvuWcqO+8jGZsb2F05pWw44KSSEVY44Gn6KGo

14 messages 2014/06/23
[#49840] Re: rubyでfloat(32bit浮動小数点)の数値をHEX表示する手法は? — EGUCHI Osamu <eguchi@...> 2014/06/23

44GI44GQ44Gh77yg44Ko44K544Ki44Oz44OJ44Kk44O844Gn44GZ44CCDQoNCjIwMTTlubQ25pyI

[#49842] Re: rubyでfloat(32bit浮動小数点)の数値をHEX表示する手法は? — Nobuyoshi Nakada <nobu@...> 2014/06/23

(2014/06/23 9:29), EGUCHI Osamu wrote:

[#49843] Re: rubyでfloat(32bit浮動小数点)の数値をHEX表示する手法は? — junichirou tahara <taharajunichirou@...> 2014/06/23

44G+44Gk44KC44Go5qeY77yM44GI44GQ44Gh5qeYDQrjgYLjgorjgYzjgajjgYbjgZTjgZbjgYTj

[#49844] Re: rubyでfloat(32bit浮動小数点)の数値をHEX表示する手法は? — junichirou tahara <taharajunichirou@...> 2014/06/23

anh0YWhhcmHjgafjgZnvvI4NCmZsb2F0ID0+IEhFWOOBjOOBp+OBjeOBvuOBl+OBn+OBjA0KSEVY

[ruby-list:49857] Re: encoding of backtrace

From: Nobuyoshi Nakada <nobu@...>
Date: 2014-06-30 08:04:25 UTC
List: ruby-list #49857
(2014/06/29 21:45), OHARA Shigeki wrote:
>>> これを端末の encoding に合わせて出力する方法はあるでしょうか?
>>
>> 今のところは対応していません。変換できない文字があった場合にさらに例外
>> が発生してしまうのが悩ましいところです。
> 
> なるほど。現状は、敢えてそのまま出力している、ということでしょうか。

「敢えて」というほど意図的ではありませんが、そういう状況でどうするべき
か未定ということはあります。

> さらにコードなどを調べずに聞いてしまいますが、
> これは仕組みとしてはどういうふうになっているのでしょうか?
> $stderr を通る物は全て set_encoding の指定に従って
> 変換されると思っていたのですが (そこから勘違いしてるかもしれませんが) 、
> backtrace は変換されないのは何故だろうという疑問です。

このエラーメッセージが出るのは、script上ではrescueされずにプログラム全
体が終了するときです。うっかり余計なことをしていると二重にエラーになっ
てしまう危険性もあり、可能な場合はrubyのオブジェクトを介さずにCレベルで
そのまま出すようになっています。

> io.c を眺めていたら、
> void rb_stdio_set_default_encoding(void) というのを見つけたので、
> IO.stdio_set_encoding() があると便利なのかなと思いました。
> もっとも、これでもせいぜい 3 行が 1 行になる程度ですが。

新機能は https://bugs.ruby-lang.org/projects/ruby-trunk/issues/new で。

-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread