LABVIEW編程之時間標識轉換為字符串

2020-11-30 電子產品世界

時間標識是一種特殊的數值型控制項,在早期版本的Labview中並不存在,可能是8.X後出現的。這種特殊類型的數值型控制項包含了我們需要的全部時間、日期信息。

在定時函數選板中,LABVIEW提供了許多的時間類相關函數,包括時間、日期轉換為字符串函數,實際上格式化寫入字符串函數完全支持時間標識,其轉換功能更多、更全面。

與數值轉換為字符串類似,時間標識轉換為字符串的關鍵也是格式化字符串,LABVIEW提供了許多專門的時間相關的時間格式代碼,這些格式符不僅僅可以用來轉化為字符串,同時也可以時間標識控制項進行特色顯示,以下的例程中將同時利用字符串和時間標識顯示控制項顯示我們需要的時間日期。

一、獲取系統時間和日期(年、月、日、時、分、秒)

獲取系統時間日期(年、月、日、時、分、秒)是最常用的時間操作,LABVIEW專門提供了格式化時間/日期函數,該函數可以直接獲取當前的時間和日期,不需要添加任何時間代碼,默認的時間代碼為%c。

LABVIEW中的時間分為絕對時間和相對時間,絕對時間簡單地說就是我們說的系統時間日期,相對時間可以用來表示經歷過的時間,比如兩個絕對時間(系統時間)的差值。

絕對時間的時間格式代碼為%<>T,這是時間格式代碼的容器,其它格式代碼應位於<>中。

時間格式代碼%c根據當地計算機語言規定的格式顯示日期和時間。

對於時間標識顯示控制項,它的時間日期顯示格式一般通過屬性對話框設置,為了說明時間格式代碼,我採用了屬性節點設置。

二、分別獲取時間和日期字符串

很多時候,我們需要分別獲取時間或者日期,LABVIEW專門提供了獲取日期/時間字符串函數,該函數返回兩個字符串,分別表示時間和日期,具體用法見下圖。

利用格式化寫入字符串函數同樣可以獲取時間和日期,而且可以自己定義顯示格式,比如年、月、日之間的分隔符以及其顯示順序,時、分、秒也是如此。

1、獲取日期(年、月、日)

年的時間格式代碼為:兩位年份(比如97)%y,四位年份(比如1997)%Y。月的時間格式代碼為:%m。天的時間格式代碼為:%d

2、獲取時間(時、分、秒)

時的時間格式代碼有兩種:24小時制度---%H,12小時制度---%I;

分的時間格式碼為:%M;(小寫表示月份)

秒的時間格式碼為:%S。

三、任意獲取年、月、日、時、分、秒

通過年、月、日、時、分、秒的時間格式代碼,我們就可以任意獲取其中一個或者幾個,這在定時監控或者定時數據記錄中非常常見。

下面的例子利用格式化寫入字符串函數每分中執行一次操作,比如報警、寫入文件等等。為了保證每分鐘僅操作一次,必須在分鐘改變的上升沿時執行操作。

四、獲取小數(毫秒)數

利用格式化寫入字符串函數同樣可以實現,見下圖:

五、獲取「星期」相關信息

LABVIEW中的時間標識包含了系統時間的全部信息,當然也包括了有關「星期」的幾個時間格式碼。在一些歐洲的合資企業中,經常使用周來表示工作時間,比如今天是一年中的第幾周第幾天等等,使用星期相關的時間格式碼可以輕鬆實現。

時間格式碼%A表示星期名稱全稱(比如星期一),%a表示星期名稱縮寫(比如星期一)。

對於中文作業系統,%A和%a作用完全相同,但是對於英文作業系統則完全不同。

時間格式碼%w返回10進位方式表示的星期幾(0-6),其中0表示周日。

時間格式碼%U返回一年中的星期數(0-53),周日為首日。

時間格式碼%W返回一年中的星期數(0-53),周一為首日。

六、相對時間

絕對時間一般都是指的系統時間,存在一個0時刻。很多時候,我們並不關心當前的絕對時間。比如籃球比賽、測試程序運行時間等等,這些都是「經歷過」的時間,實際上是兩個絕對時間的差值,我們稱這樣的時間差為相對時間。

相對時間一般以雙精度數表示,表示經過過的秒數。對於相對時間,也可能需要以天、時、分、秒等表示。對於這些需要,我們不需要自己計算,採用相對時間就可以自動換算了。

相對時間的時間格式碼為:%t。%<>表示相對時間的容器。

相關焦點

  • Python中字符串編碼在二進位之間相互轉換的方法
    ,關注我,一同學習簡單易懂的Python編程。第八十節:字符串編碼轉換在學習「計算字符串的長度」(詳見第72節內容Python中如何計算字符串的長度),對編碼的概念、分類和作用,做過一個簡單的介紹,今天的內容,還是從「編碼」開始談。
  • 介紹「十六進位數字符串至數值轉換」函數
    有幾點需要注意:本文引用地址:http://www.eepw.com.cn/article/201701/337016.htm1:雖然該函數的輸入端子「string」的值可以是十六進位數、字符串(ASCII)或其他進位數,但是「string」的值流入該函數中時,先轉換成字符串(ASCII)。
  • LabVIEW編程技巧:功能強大的變體數據類型用法
    如在保存採集數據的同時,可以在變體中保存一個「時間」屬性,用以保存數據創建的時間。變體的屬性值可以是任何LabVIEW支持的數據類型。下面通過兩個例子說明在LabVIEW中,如何對變體數據類型進行編程。
  • Go語言學習筆記之字符串一
    在網絡通信、並發和並行編程擁有極好的體驗,當然不僅僅在這上上面,還有網絡編程,web應用,應用下載等有著非常大的潛力。這裡列舉一些 Go 語言的特點: 簡化問題,易於學習 內存管理,簡潔語法,易於使用 快速編譯,高效開發 高效執行 並發支持,輕鬆駕馭, 靜態類型 標準類庫,規範統一 易於部署 文檔全面 免費開源學習go語言有幾天了,今天突然想到把學的寫成筆記,記錄一下。
  • 在JavaScript字符串的search()方法中,如何匹配正則表達式?
    第一節:基本概念#JavaScript#正則表達式已經成為各大程式語言的標準,只是在不同的語言中,所使用的方式有所不同,但基本上核心的功能都是一樣的。正則表達式的核心功能是建立一種匹配模式,這個匹配模式可以理解為模板,模子。然後再拿具體的字符串來與這個模式進行匹配,如果匹配上,則表示符合要求,則進一步採用措施。
  • IE10 User-agent字符串曝光-微軟,Microsoft,IE10 ——快科技(驅動...
    除了​​一些令人興奮的新功能 (CSS3 FlexBox、Grid、Gradients、MultiCol),該平臺預​​覽版也包括新的IE10 User-Agent 識別字符串:Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1;
  • 10個很棒的 JavaScript 字符串技巧
    我們稱一個字符序列為字符串。這幾乎是所有程式語言中都有的基本類型之一。這裡跟大家展示關於 JS 字符串的10個很棒的技巧,你可能還不知道哦?1.如何多次複製一個字符串JS 字符串允許簡單的重複,與純手工複製字符串不同,我們可以使用字符串的repeat方法。2. 如何填充一個字符串到指定的長度有時,我們希望字符串具有特定長度。
  • LabVIEW編程實例:如何求解1000以內的所有素數
    素數有無窮多個,那麼在LabVIEW中如何編程實現求解1000以內的所有素數呢?對於第二個問題,遍歷1000以內的所有大於1的自然數,逐個判斷是否為素數,若是,則統計出來,否則忽略。下面看一下在LabVIEW中如何編程解決這兩個問題。
  • Python中去除字符串首尾空格、特殊字符和指定子字符串的方法
    ,關注我,一同學習簡單易懂的Python編程。第七十七節:去除字符串中的空格和特殊字符字符串在實際應用中,有很多情況是默認去除字符串首尾的空格狀態,去除幾個比較特殊的字符的。這幾個特殊的字符是:換行符「\n」、回車符「\r」、制表符「\t」。
  • C語言編程技巧:跟我學如何定義及使用一個字符串數組
    實現目的我們在用C語言編寫程序時,經常會遇到使用字符串數組的情況,這種數組的特點是, 數組中的每個元素都是一個字符串,但每個字符串的長度卻不相同。如果你使用C++語言進行編程的話,實現起來相對比較簡單,只需直接選擇標準模板庫的字符串string類,在代碼中定義該類的一個數組即可實現。現在的問題是,在純C語言中如何定義這樣的一個字符串數組呢?如對於下面的一個字符串數組:str = {「I love C.」,「I love C++.」,「I love JAVA.」
  • 在C語言中如何高效地複製和連接字符串?
    就目前而言,在編程領域中,C語言的運用非常之多,它兼顧了高級語言的彙編語言的優點,相較於其它程式語言具有較大優勢。儘管這些函數可以同樣很容易地定義為返回一個指針來指向最後一個複製的字符(或它的後一位),而且事實證明這種做法也非常有用。兩個或多個字符串的連接操作的最佳複雜度和字符數量成線性關係。但是,如上所述,讓函數返回指向目標字符串的指針會導致操作的效率明顯低於最佳效率。該函數遍歷源字符串序列和目標字符串序列,並獲取指向這兩個序列末尾的指針。
  • 漫畫:什麼是字符串匹配算法?
    第三輪,我們把模式串再次後移一位,從主串的第三位開始,把主串和模式串的字符逐個比較:主串的第三位字符是b,模式串的第三位字符也是b,兩者匹配,繼續比較:主串的第四位字符是c,模式串的第四位字符也是c,兩者匹配,繼續比較:主串的第五位字符是e,模式串的第五位字符也是e,兩者匹配,比較完成!
  • java教程之Java編程基礎
    與C/C++語言不同的是,Java語言還可以將一些非拉丁字母包含在標識符中,這是因為Java語言使用的是Unicode字符,所有的十六進位00C0以上的Unicode字符都可以用在標識符中。但是Java語言的關鍵字是不能用來作為標識符的。我們在使用標識符的時候應該儘量表達所要表示的類、變量、方法等的含義。另外,標識符中可以使用下劃線,我們應該充分利用這一點以提高程序的可讀性。
  • 深入剖析go中字符串的編碼問題——特殊字符的string怎麼轉byte?
    前言前段時間發表了沒有經過字節級別的轉義,那麼字符串是一個標準的utf8序列。有了前面的基礎知識和字符串是一個標準的utf8序列這一結論後我們接下來對字符串「」(如果無法展示,記住該特殊字符的unicode是\u0081)手動編碼。
  • 按任意符號間隔拆分字符串的函數
    大家好,我們今日講解「VBA信息獲取與處理」教程中第十四個專題「Split函數提取數據信息的深入講解」的第二節「按任意符號間隔拆分字符串的函數」,這個專題是非常實用的知識點,希望大家能掌握利用。第二節 按任意符號間隔拆分字符串的函數在上一講中,我們講解了Split函數的基本應用,但我們很快會發現,這個函數在利用起來有一定的局限性,只能按某個字符串進行拆分,在實際的應用中,如果我們要按多個字符串進行拆分,這個函數就無能為力了,怎麼辦?我們可以擴展一下這個函數的功能。
  • JavaScript字符串-概念
    字符串的概念 概念: 在JavaScript中將所有單引號或雙引號括起來的都叫做字符串 字符串的屬性 1.length; 返回的是當前字符串中字符的個數 例如我們要輸出hello的個數:
  • JavaScript字符串 - 查找方法
    字符串查找的方法子字符串代表的就是要查找的字符串1.indexOf();格式:字符串.indexOf( 子字符串串,開始查找的位置 );返回值:如果在字符串中查找到了子字符串第一次出現的位置,返回子字符串出現的位置,否則沒有查找到返回 -
  • 如何將SID在二進位和字符串格式中轉換
    我們的問題是:如何將SID在二進位和字符串格式中進行轉換?當然,你可以使用Win32API來使用代碼進行轉換,具體就是這兩個API:ConvertSidToStringSid和ConvertStringSidtoSid,但有時候你可能在調試一段內存結構,或者你需要手動地對SID的格式進行轉換,那麼我們就來看看下表:舉個例子,如果你有一個SDI,值為:S-1-5-21-2127521184-1604012920-1887927527
  • MySQL字符串截取 和 截取字符進行查詢
    通過mysql自帶的一些字符串截取函數,對數據進行處理,下面是我整理的字符串截取 和 截取字符進行查詢。一、MySQL中字符串的截取MySQL中有專門的字符串截取函數:其中常用的有兩種:substring_index(str,delim,count) 和concat 1.substring_index(str,delim,count) 函數的使用較為普遍。
  • php htmlspecialchars()函數將特殊字符轉換為HTML實體
    htmlspecialchars()函數定義及用法在php中,htmlspecialchars()函數是使用來把一些預定義的字符轉換為HTML實體,返迴轉換後的新字符串,原字符串不變。如果 string 包含無效的編碼,則返回一個空的字符串,除非設置了 ENT_IGNORE 或者 ENT_SUBSTITUTE 標誌;被轉換的預定義的字符有:&:轉換為&amp;":轉換為&quot;':轉換為成為 '<:轉換為&lt;>:轉換為&gt;htmlspecialchars()函數有四個參數,第一個參數規定了需要轉換的字符串