請問如何在字串中插入數字..

請問前輩們小弟該如何讀取txt檔案的文字並在每五個字後穿插一個數字1,並計算原始字數與穿插之後的字數..該利用何種物件呢..希望前輩們多多指教..

Untitled1.vi

重點是你要先判斷出5個文字, 可以用字元數判斷

插入 1 可以用concatenate strings, 或者用 format into string 去完成

LabVIEW沒有一個物件可以直接達到你的目的

所以你必須用一些迴圈搭配來完成

另外, 如果你的檔案中英文數字都有就很麻煩了

yao38515.5128472222

如果要處理的純數字的話,
可以用 string 或 numeric 處理。

但是如果裡頭含有 文字類的資料的話,
就一定要用 string 來處理。

所以你的情況,
最終得要將數字的部分轉成 string 方能與
其它的 文字類的資料來一同處理。

 

如同 yao 所說的,
你得要借助迴圈來完成這重覆性的工作。

計算字數,內建有『string length.vi』
(VI 名稱不確定)
可以幫助你完成。

不過,又因為你已經知道每固定字數便插入
一個字元(數字)
所以也可以直接用累加的方式來完成。

前面兩位前輩以下是我試過的迴圈做法.但是結果似乎不是預期的那樣..可否請兩位前輩幫晚輩修改一下並給予指教..謝謝

Untitled1.vi

你每一次迴圈都是用開檔後原始的字串去處理, 因此前面處理過的只是一直被後面蓋掉

你用probe或者highlight去run個幾次迴圈你就知道問題在哪裡了, 這個程式不難, 你要試著去練習使用工具來幫你除錯

下圖是我寫的例子, 每次固定取5的長度, offset用迴圈的index去運算

offset = index*5 -> 0, 5, 10, 15, ...

迴圈作到offset+5 > 原本字串的長度就停止, 很直譯式的寫法

這種程式的寫法很多, 你的修改一下也是可以

Untitled1.vi

ps. 只適用於1個byte的字元碼, 有2碼字就會變亂碼

yao38516.9680324074

謝謝yao前輩..

終於了解如何運作了..謝謝指教..