[英]How to get full unit name in jscience
我正在使用jscience為我解析一些單位:
Unit<?> meter = Unit.valueOf("m");
System.out.println(meter);
Unit<?> foot = Unit.valueOf("ft");
System.out.println(foot);
打印輸出:
m
ft
我想打印出來
metre
foot
或類似的東西。 實際上,我實際上是在讀取這些單位字符串,我無法控制用戶鍵入的內容,因此我希望有人鍵入“ m”,有人鍵入“ metre”。 當將其顯示回來時,我想始終將其顯示為“ Metre”。
[局限性]
該程序是一個大型數據存儲程序,用於存儲許多不同類型的數量。 用戶可以存儲任何數量的任何尺寸(只要在UCUM中定義)。
您可以使用UnitFormat
類來指定如何打印這些類。 使用label
方法來指定名稱,並使用alias
方法來幫助解析。
import java.io.IOException;
import javax.measure.unit.Unit;
import javax.measure.unit.UnitFormat;
public class ScienceUnit {
public static void main(String[] args) throws IOException {
Unit<?> meter = Unit.valueOf("m");
StringBuilder sb = new StringBuilder();
UnitFormat instance = UnitFormat.getInstance();
instance.label(meter, "Metre");
instance.format(meter, sb);
System.out.println(sb.toString());
}
}
輸出:
Metre
請注意,如果您從該程序中刪除instance.label
行,則輸出為:
m
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.