diff --git a/src/main/java/com/reandroid/arsc/decoder/ComplexUtil.java b/src/main/java/com/reandroid/arsc/decoder/ComplexUtil.java index 05a0909..3bda56c 100644 --- a/src/main/java/com/reandroid/arsc/decoder/ComplexUtil.java +++ b/src/main/java/com/reandroid/arsc/decoder/ComplexUtil.java @@ -147,20 +147,27 @@ public class ComplexUtil { this.multiplier = multiplier; } public String formatFloat(boolean scale, float value){ - if(this.flag == 0){ - if(scale){ - value = value * 100.0f; - } - return String.format("%.1f", value); + boolean neg = value < 0; + if(neg){ + value = -value; + } + int multiplier = 1; + for(int i=0; i= 0.5f){ + i = i + 1; + } + value = ((float) i)/multiplier; + if(neg){ + value = -value; } - String result = String.format("%.6f", value); - // To trim ending zeros - value = Float.parseFloat(result); if(scale){ value = value * 100.0f; } - result = Float.toString(value); - return result; + return Float.toString(value); } public static Radix forFlag(int flag){ if(flag == 0){