Board logo

標題: [發問] 轉特殊日期與取值的方法 [打印本頁]

作者: starbox520    時間: 2017-3-14 08:38     標題: 轉特殊日期與取值的方法

問題1 : Fri Mar 10 02:42:09 2016 這個日期我想轉成 2016-03-10 02:42:09
有找過資料,好像是 dddd*mmm*dd*hh**nn*ss*yyyy 就會變成這種樣子
但因為目前是字串要轉成dddd*mmm*dd*hh**nn*ss*yyyy 在轉成yyyy-mm-dd hh:nn:ss
不曉得要怎麼做才好...

問題2 : 下面字串分割
1 7 DDR033-16 1 0 21000 671-0000-11 CR= 6. 2. 1 Lew 6300 00000005 總長度為105
已找到我發現的規則格式區分為3, 4, 11, 8, 9, 9, 14, 16, 9, 8, 14 <- 這裡指長度,ex:長度0-3 為 1 , 3-7為 7...以此類推

這邊分割結果會變成A=1, B=7, C=DDR033-16, D=1, E=0,F=21000,G=671-0000-11 ,H=CR= 6. 2. 1,I=Lew,J= 6300,K=00000005
總共會用A - K去取代分割出來的值
PS:這邊有想過直接用空格去判斷下一格,但後來發現資料會出現欄位是空格的(代表 值就為null),若以此方法去分割,會lose掉
作者: 准提部林    時間: 2017-3-14 10:42

T$ = "Fri Mar 10 02:42:09 2012"
S = Split(T, " ")
D = Format(S(2) & " " & S(1) & " " & S(4) & " " & S(3), "yyyy-mm-dd hh:mm:ss")
MsgBox D


T$ = "1 7 DDR033-16 1 0 21000 671-0000-11 CR= 6. 2. 1 Lew 6300 00000005"
T = Replace(Replace(Replace(T, " ", "_"), "._", ". "), "=_", "= ")
MsgBox T
S = Split(T, "_")

用固定長度分割不是更快???
作者: starbox520    時間: 2017-3-15 08:49

回復 2# 准提部林
這是我要解的格式

日期解法我一開始用了比較笨的方法

就是算他在第幾格往後數幾格

再把一小段一小段取值給變數

然後在用變數重新排列成正常的格式...

相對的大大的解法簡單&簡化了許多...

________________________________________

因為分析這個主要是想把他Insert到資料庫

上面還好,下面就有點比較難著手

這些是我會取的變數名字 ,相對的取完後,這樣就是一列資料 ,Host Name,OS Information,DMD Software Ver,Disk,Date & Time ,Slfg,Bgg Name,Version ,Revision ,DidID  ,Part Number,BI,IC,MC0,MC1,LS,Timing   ,Vendor  ,Serial Number

Host Name,OS Information,DMD Software Ver,Disk,Date & Time   這邊我已經解決了

棘手的是下面...   Slfg,Bgg Name,Version ,Revision ,DidID  ,Part Number,BI,IC,MC0,MC1,LS,Timing   ,Vendor  ,Serial Number

BI,IC,MC0,MC1,LS 他格式上寫成4列,所以不能用原本的 FPGA Revision 去取得這4個值 ,所以才會用BI,IC,MC0,MC1,LS (只會出現這5種)

像下圖Host Name,OS Information,DMD Software Ver,Disk,Date & Time  每一列的資料前面這幾項不會變

像我提供的txt檔,一共會有8筆資料

第一筆資料會長這樣  Host Name:D52256-5,OS Information:2.4.21-4.0.1,DMD Software Ver:v2.1.1_BLD4,Disk:47628120 kB  Total, 52689360 kB   Free,Date & Time:2017-03-09 07:42:10,Slfg:0,Bgg Name:GD1096-16,Version:1 ,Revision:0 ,DidID:21584  ,Part Number:671-5450-91,BI:6.  2.  1 ,IC:3.  8.  5,MC0:4.  7.  3,MC1:4.  7.  3,LS:,Timing: New  ,Vendor:6192  ,Serial Number:0650109S

PS:此TXT檔最好用 Wordpad或其他開TXT檔文件檢視,才能清楚看到排版

  [attach]26810[/attach]




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)