Haxeの科学記法を抑制する方法はありますか?対象を越えてHaxeの科学記法を抑制する
私が持っている場合たとえば、:なHTML5などのターゲットで
var f:Float = 0.00007075;
var s:String = Std.string(f);
、この出力:0.00007075
をただし、出力をターゲットとC++:7.075e-05
が方法はあります文字列形式に科学記法を使用するかどうかを制御しますか?
Haxeの科学記法を抑制する方法はありますか?対象を越えてHaxeの科学記法を抑制する
私が持っている場合たとえば、:なHTML5などのターゲットで
var f:Float = 0.00007075;
var s:String = Std.string(f);
、この出力:0.00007075
をただし、出力をターゲットとC++:7.075e-05
が方法はあります文字列形式に科学記法を使用するかどうかを制御しますか?
おそらく、別のライブラリに切り替えて、浮動小数点数をフォーマットを指定する文字列に変換することができます。例:https://github.com/polygonal/printf/blob/master/src/de/polygonal/Printf.hx#L119
フォーラムでこれを回答したGameHaxeのHugh Sandersonに対するクレジット
フロートのグローバル出力モードはEXTERNを使用して変更することができる。
class Test
{
@:native("__hxcpp_set_float_format") @:extern
static function setFloatFormat(format:String):Void { }
public static function main()
{
trace(0.00005);
trace(5e20);
setFloatFormat("%.12f");
trace(0.00005);
trace(5e20);
}
}
フランコPonticelliも同様【thx.format]を有する(https://github.com/fponticelli/thx.format/blob/マスター/ src/thx/format/NumberFormat.hx)でGitHub –