請問怎麼將數值不滿的位置填入0

我將字串16進制合併後轉成10進制數值,然後再以字串方式顯示出來,但是我要顯示10位,如果不足的地方填入"0"

請問是否有地方可以設定?

例如:00A5H=165  但是我想顯示0000000165 該怎麼做??

![](upload://eq7EY1GWgU82ptLK9xkTF070iL.jpeg)

 

 

玩了1 天,問題終於自己解決了,原來labview 的"0"ASCII 是48H與DOS的"0" 30H不同,其他內碼也完全不一樣

所以將空白的"\s"=32H 填入 "0"=48H 就可已了

研究後發現labview字串輸入中文字內碼與DOS(Big5) 相同,而ASCII完全不一樣 

![](upload://yaAsPDyr180lHX4T6KCb3tyECnW.jpeg)

 

OKADA38917.0533333333

昨天做好忘記放上來,可以參考一下。

範例檔:Hex String Converter.vi

範例圖:

![](upload://ytSgeoHvXpiQD3N6u2kN4hIlbQ.jpeg)

 

在「Number to hexadecimal String.vi」本身可以指定長度,
而且不滿者會予從最高位元開始補 0 ,所以可以利用這個特性來完成需求。

在 Sequence 的第一個 frame 是將原本 hex string 轉成 Dec string,
而在 第二個 frame 則是把 Dec String 假裝成 Hex String ,
想利用它會補 0 的特性,之後再轉回原本的 Dec String (偽裝的 Hex String)。

不過這樣的做法會用了好幾塊記憶體空間才完成,在效率上可能要注意一下。

Airbolt38917.4823611111

直接使用Format Into String就可以了。下圖為4位數的String Format格式,若想改成5位數時,僅需要將%04d改成%05d。

![](upload://8dL4bSHDGPgTLI1e6j1zmySM3BR.png)

謝謝說明

我本來有試Format Into String,以為只能小數點後位數,原來還可以%0xd!

目前我都看 6.0 的書籍,看來又要去買新書來看了

 

OKADA38917.9460185185