2015年4月5日 星期日

LINE貼圖上架教學

https://creator.line.me/

資料來源
http://blog.mixflavor.com/2014/04/line-sticker-submit.html

所有規格皆翻譯自LINE的貼圖規格(guideline)


主圖
 (Main Image)
貼圖們
 (Sticker Images)
聊天室標籤
(Chat Room Tab Image)
數量: 1
格式: png
尺寸: 寬240 × 高240 px
數量: 40
格式: png
最大尺寸: 寬370 × 高320 px

也就是說可以小於370x320,
但不能超過的意思。
數量: 1
格式: png
尺寸: 寬96 × 高74 px
作者名
(Creator)
貼圖主題
(Sticker Title)
貼圖描述
(Sticker Description)
所有權
(Copyright)
最多50個字元
(25個中文字)
最多40個字元
(20個中文字)
最多160個字元
(80個中文字)
最多50個字元
(25個中文字)

另外,每張貼圖的上下左右都要保留10px的空白,也就是說雖然一張貼圖最大是370x320px,但只能畫到350x300px置中哦!

另外還有一條規則要注意:所有圖的尺寸不能出現奇數單位(原文:Sticker images will be resized automatically. Please ensure the image has an even-numbered height and width.)。這句話是什麼意思呢?就是如果你的圖是347x291px是不行的!請直接各加一個像素補成348x292px。

以上就是組成LINE貼圖包的所有原料!
知道了需要什麼原料之後,當然就是開始畫畫畫⋯⋯寫寫寫!
然後把40張貼圖,命名為1.png、2.png⋯⋯~40.png
主圖命名為main.png,跟聊天室標籤命名tab.png
統統壓縮成一包zip上傳就可以了!

上傳步驟圖解

1.填寫完所有資訊後,點Sticker images

2. 然後拉到畫面最底下,按下Edit

3. 看是要整包ZIP上傳還是一張一張上傳~



註冊注意事項

沒有準備好貼圖也可以先註冊成為LINE的創作者!
要如何將貼圖上架到LINE呢?註冊的流程可見LINE中文部落格

2015年3月9日 星期一

櫻花扦插繁殖


REF:
http://rosetalk.idv.tw/rosebreed.html


基本上櫻要花扦插繁殖是比計困難的,但是還是有其方法以下是櫻花可以扦插繁殖技術可參考看看
 
櫻花嫩枝扦插繁殖技術 
櫻花(PrunusserrulataLindl)屬薔薇科落葉喬木,株高525cm,35朵花組成傘房狀或總狀花序,花色有白色、粉紅色,單瓣或重瓣,花、葉同放或先花後葉,花期4-5月。春暖花開時,繁花滿樹,競相爭妍,花色素艷清香,淡雅端莊,是園林綠化的著名花木。

  通常櫻花以嫁接繁殖為主,多用單瓣櫻花或櫻桃為砧木,於早春開花前進行切接或劈接,應用扦插法繁殖報道的甚少。近年來我們進行的櫻花嫩枝扦插繁殖試驗結果表明,在扦插後的25d,平均生根率在95%以上,單株生根最多可達20,且多數屬於皮層型根,也有愈傷型根,其移栽成活率在90%以上,現將其技術介紹如下。

  1 插條的剪取及處理
  6月中上旬至9月中上旬,採集當年萌發的半木質化枝條,剪成1015cm長的枝段,每個枝段保留頂部23片葉,其餘葉片連同葉柄一起摘掉,插條下切口用利刃平切,要求切面平整。把剪好的插條捆成50枝或100枝的小捆,在陰涼潮濕處將插條基部約34cmABT生根粉1(中國林業科學院ABT研究中心研製)濃度為50mg/L的溶液中浸泡58h或在濃度為100mg/L的溶液中浸泡24h

  2 扦插方法及插後管理
  2.1 插床設置
  選陰涼易排水處搭建寬1.21.5m、長5.06.0m的塑料小拱棚,拱棚高度7090cm。底部先下挖25cm,而後鋪墊厚10cm左右的爐渣,上面再鋪厚10cm左右的膨脹珍珠巖或青沙作為扦插基質,澆透水。
  2.2 扦插  
  將插條按株距3cm、行距5cm扦插於插床內(以插條葉片互不重疊為宜)。扦插時先用稍粗於插條的短木釬打孔,然後將插條放入孔內,壓實插條周圍的基質,使基質與插條緊密接觸,扦插深度為45cm
  2.3 插後管理  
  扦插後立即用清水灑透,蓋嚴棚膜,相對濕度保持在95%以上。以後每天清晨適量噴灑清水1次。拱棚內溫度宜保持在30℃左右,若超過35℃可灑水降溫,基質溫度以25℃左右為宜。扦插初期灑水量應偏大一些,以後逐漸減少灑水量。插條開始生根時(一般在扦插後15d左右),早晚可適當通風,隨後逐漸加大通風量,延長通風時間。待插條根長達到35cm、每插條有35條根時即可移栽。

  3 移栽
  移栽前將棚膜逐漸打開,煉苗7d左右,並減少灑水量。移栽時將經鍛煉的扦插苗直接移入大田,立即澆透水,用遮陽網遮蔭幾天,忌暴曬。也可先移入營養缽中(培養土要求通透性好),移後放入小拱棚內,澆透水,覆上棚膜,保濕遮蔭幾天,開始時每天早晚通風,23d後逐漸加大通風量,10d後打開棚膜,去掉遮蔭物,再煉苗45d後即可移入大田。

/扦插繁殖成功後記得po上心得和大家分享
 



 資料來源:
玫瑰繁殖
玫瑰花之繁殖
玫瑰花之繁殖方法主要有扦插法、高壓法、嫁接法及播種法等四種,前三種屬無性繁殖,播種法屬有性繁殖。除了原生種玫瑰,經由無性繁殖產生之玫瑰苗木才會和原母株一模一樣,因此,玫瑰花商所販賣之玫瑰盆栽或切花,全部是經由非播種繁殖(即無性繁殖)之自根苗或砧木苗。
目前國內玫瑰繁殖是以扦插法為主,極少部份是用高壓法,嫁接法僅限於少量進口之砧木苗。玫瑰新品種之培育,除少部份經由芽變而來外,必須經由人工選擇優良的親本雜交,取其種子播種實生苗,這也僅限於國外專業培育新品種之玫瑰苗圃及極少數玫瑰熱愛者使用。
扦插法
Cuttings In Tray放置於小穴盤扦插的玫瑰
扦插法是將玫瑰枝條直接扦插於合適之介質,俟枝條底部長根成為新植株,係目前國內最普遍且最簡便的玫瑰繁殖方式。
扦插法之優缺點   其優點是玫瑰苗木可以遺傳到親本之優良特質,並可在短時間內大量取得苗木,且成長時間快速。缺點是需較多之插穗管理,特別是一般業餘者鮮少有自動噴霧裝置,需依賴每天定時手工澆灌保濕,以提高扦插成功率。
適合扦插時期   國內露天扦插以農曆新年前後為主要時期,但如有溫控溫室或簡易溫室,國內氣候條件一年四季皆可施以扦插法。
扦插枝條選擇   以一年生(即當季開花)、開花後,且無病蟲害的優良健康枝條為佳,枝條以採中段節位(約4至7節)生長最好。
Cuttings枝條剪裁:三節位、二節位及單節位。
插穗枝條剪裁   枝條剪裁以單節位扦插法(一芽一葉為單節位)、二節位扦插法(二芽二葉)及三節位扦插法(三芽三葉)最為普遍,插穗枝條長度以15cm以下較為適當,生長勢以二、三節位的扦插苗為佳,地植或盆植可以非常快速的成長,單節位的則有更多插穗可供使用。插穗枝條下部以利剪斜剪45度,另為減少插穗之水分過度蒸散,需減少葉片數量,例如,二節位插穗每節位可保留一芽2片小子葉,故二節位插穗枝條就是二芽每葉各二片小子葉;單節位插穗則是可以保留完整葉施以扦插。
插穗預措處理   不論在何時期進行扦插,作業之前建議先將插穗預措處理,即將殺菌劑(如免賴得或億力)加水稀釋1,000倍(水1,000cc + 殺菌劑1公克),殺菌劑中可以添加一些營養劑,如速大多、施達B1、HB-101等,以增加扦插枝條存活率。將任何一種營養劑稀釋500至1,000倍加入殺菌劑中,再將插穗浸泡在殺菌劑混合營養劑中約5至10分鐘後,取出枝條後扦插在溫室或簡易溫室中。
Peat Moss市售已調配好之扦插介質-泥炭土
扦插注意事項   扦插的介質必須具備良好的通氣性及排水性,扦插後需澆上大量的水,並保持介質充足濕潤,放置於陽光充足但日光不直射的地方。進行扦插法時要記得,扦插後之管理,遠比扦插前之程序來得重要許多。基本上,扦插成功最重要之要素乃是保持插穗之高濕度,因此溫室為專業者之最理想環境,而一般業餘者澆水原則為夏天早晚各一次,冬天一天一次即可,春天和秋天之頻率則介於夏冬之間。
扦插苗開根、馴化及移植  
扦插法因玫瑰品種、節位高低及扦插季節不同,枝條開根天數亦不一致。生命力較強勢之玫瑰品種,最早為9至14天即可開根。一般正常開根時間約扦插後第14至21天長出癒合組織且新芽生長,第21至28天開始長出根系。扦插苗能不能成功存活,關鍵期是第10至14天。扦插後第10至14天,如葉子能保持完好翠綠,則約有七成之存活率。扦插之開根速度,以夏天最快,春秋次之,冬天最慢。
仟插後第30至45天為馴化期,在這個階段應該是新芽、根系生長良好,並可將覆蓋在上面的透明罐、塑膠袋或寶特瓶等移除。放置於陽光充足但日光不直射的地方正常澆水,7至10天後就可挖起(但盡量不要傷到根系)移植花盆中,完成玫瑰扦插繁殖。
扦插材料準備
  • 自製小型溫室:花盆等容器、廣口透明罐或寶特瓶或鐵線加半透明塑膠袋等。
  • 扦插用介質:泥炭土、珍珠石、炭化稻殼等混合或建築用砂加珍珠石或蛭石等調配。
  • 水桶:稀釋殺菌劑及營養劑用。
  • 剪刀:修剪枝葉用。
  • 枝條:健康無病蟲害優良枝條。
  • 開根劑:IBA吲哚丁酸0.4%粉劑或液劑。
  • 殺菌劑:億力或免賴得。
  • 營養劑:速大多、施達B1或HB-101等。
扦插法之圖解說明
一、選擇一年生、開花後之健康枝條 二、剪取適當節位插穗並剪除過多之葉片 
三、將插穗浸泡於殺菌劑中 四、將插穗沾開根劑 
五、扦插於排水性佳之介質 六、以透明罐或塑膠袋蓋住插穗保濕 
簡易定時噴霧
個人喜愛使用簡易的定時噴霧來保持扦插枝條葉片之濕潤,在光線明亮的陽台裝上定時澆水控制器,以每20分鐘自動噴霧10秒,可獲得相當不錯之扦插成功率。

2015年2月8日 星期日

智慧財產權相關問題

http://www.mcjh.kl.edu.tw/usr/wdh/info/94/copyright/


http://www.tipo.gov.tw/ct.asp?xItem=206748&ctNode=6983&mp=1

以現今活潑多元的工商社會,於各式各樣的活動中利用他人著作的情形,可說非常普遍,而最常見被利用的著作種類大致上有音樂、錄音與視聽著作,如歌手之演唱、舞蹈中之音樂、播放之電影片等。另就主辦單位舉辦活動之目的,又大抵可區分為具有營利目的與非營利目的之活動,考量到非營利活動舉辦目的所具有社會公益之意義,因而我國著作權法特於第55條規定:「非以營利為目的,未對觀眾或聽眾直接或間接收取任何費用,且未對表演人支付報酬者,得於活動中公開口述、公開播送、公開上映或公開演出他人已公開發表之著作。」作為調和著作權人與社會公益需求之權衡機制,亦即符合該等要件者,利用人即得主張合理使用著作,無庸得到著作財產權人之授權或同意。上述要件,分別闡釋說明如下:

    (一)非「以營利為目的」:所謂「以營利為目的」,非僅指經濟上利益可立即實現者,並包含經濟上利益可能轉換為無形或延後發生者,如企業形象活動、商業與公益結合之活動等,均屬以營利為目的之行為。例如:在「產品的記者說明會」之場所播放背景音樂,雖主辦者對與會人員及來賓未收取費用,也沒有對表演人支付報酬(因是主辦者攜帶CD播放),惟該說明會係為獲取經濟上之利益所舉辦,即不符合本項要件。

    (二)未對觀眾或聽眾直接或間接收取任何費用:解釋上應指未對觀眾或聽眾收取入場費、會員費、清潔費、服務費、飲食(料)費或器材費等與利用著作行為有關之直接或間接之相關費用。例如剪集報上刊載之印花兌換入場券,原則上仍須購買報紙而取得該項印花,則其入場券之取得難謂未支付費用。
    (三)未對表演人支付報酬:指未對表演人在活動中所為之表演支付相當之酬勞或對價。此所稱報酬或對價可能包含工資、津貼、抽紅或工作獎金(非中獎之獎金)等,不論其名目為何,只要個案上得認定係相當於其表演勞務之對價者,均屬之,因而所支付表演人「交通費」(或車馬費)之價額如超乎一般舟車往返的標準時,仍可能被認定為屬酬勞之性質而與本項要件不符;但所支付者如未具有相對價值者(如中獎或獲得名次之獎金),由於其不具有表演之對價關係,則可認定為「未對表演人支付報酬」。
    (四)必須是「已公開發表」之著作:亦即所利用之著作必需經權利人以發行、播送、上映、口述、演出、展出或其他方法向公眾公開提示著作內容者。
    (五)必須是「特定活動」:所舉辦者如係經常性活動,於此類活動中利用著作者,即不符合本條所定之合理使用要件,例如:
      1、以個人購買的CD音樂,於辦公場所午休或下班時段對公司員工播放,因屬經常性之使用,不符合本條「合理使用」之情形。
      2、機關、團體或社區提供電腦伴唱機,供員工或所屬社區成員點歌演唱,均屬經常性的利用活動,不符本「特定活動」之要件。
      3、學校於午休時間或課間播放音樂,亦屬經常性播放情形,不符合本條規定之要件。
  因此,一般機關或公司行號於歲末年初舉辦尾牙、春酒活動時,邀請藝人演唱歌曲並支付表演人報酬者,自無上述第55條合理使用規定之適用,應事先徵得著作財產權人之同意或授權,始得利用。惟此類尾牙、春酒活動中,如由主管、員工自行粉墨登場,提供助興節目;或為特定節慶、主題而舉辦之「電影欣賞週」、「卡拉 OK大賽」等,因均屬非經常性之特定活動,且未向觀眾或聽眾收取入場費、復未向表演人支付報酬,即得依著作權法第55條主張合理使用著作。

  然而此類活動如係於餐廳舉辦,而該餐廳業者經徵得著作權利人之授權(視聽著作權利人之公開上映授權或音樂著作權利人公開演出之授權)者,機關或公司行號之使用行為即由餐廳業者所取得之使用授權所涵蓋,無需再考慮是否符合合理使用情形,自亦無庸就此另行付費;至於餐廳業者支付之使用報酬是否自行吸收或再行轉嫁給消費者,由業者自行決定。惟如餐廳未取得著作權人之授權時,此類活動仍有上述第55條之適用,不因餐廳未取得授權而受影響。


2015年1月20日 星期二

罕用字的處理方式

http://www.blueshop.com.tw/board/FUM200410061525290EW/BRD200410192321287T6.html

欄位要宣告成nvarchar(Ms SQL的資料格式),Oracle好像要設定啥東東才支援unicode,這我就不清楚了
MS SQL Server、Access基本上都是將資料存成unicode,IIS應該也要設定一下預設編碼為utf-8
剩下有問題的部份是你的程式,ASP檔案編碼要用UTF-8格式,前端的網頁記得加上charset=big5這玩意,後端的記得加上@CODEPAGE=65001。
輸入法的部份,要確定輸出的編碼是unicode的喔~~像是自然輸入法,
可以設定輸出的碼是哪一種,新注音預設是輸出unicode的,所以你才能夠打出罕用字。
----------------------------------------------------------------------------------------------------------------------------------------------
在 SQL Server 中處理 Unicode 字串常數時,必需為所有的 Unicode 字串加上前置詞 N
http://support2.microsoft.com/?id=239530
在 SQL Server 中處理 Unicode 字串常數時,您必需在所有的 Unicode 字串前加上大寫字母 N 做為前置詞,如《SQL Server 線上叢書》主題<使用 Unicode 資料>所述。「N」前置詞代表的是 SQL-92 標準中的國家語言,且必須為大寫。如果您沒有在 Unicode 字串常數前面加上 N 做為前置詞,則 SQL Server 會在使用字串前,先將其轉換成目前資料庫的非 Unicode 字碼頁。
----------------------------------------------------------------------------------------------------------------------------------------------
SQL Server - Unicode字元儲存與處理方式
http://caryhsu.blogspot.tw/2012_04_01_archive.html

由於各國有各國的語言與文字呈現方式,所以在以往儲存文字時,都會以特定字元碼加以儲存,如繁體中文就使用大五碼(Big5),而簡體中文則使用GB,但由於如果同一個系統中需要處理不同的語系或處理到一些罕用字時,常會有亂碼與處理上的問題,所以後來為了統一所有的字元碼,ISO/IEC 便製定(10646 國際編碼標準) 推出了 Unicode (UTF-8、UTF-16、UTF32),簡稱為萬國碼。

在一般的網頁應用程式上,在字元編碼,前端的網頁中你必須需要指定編碼,否則會以系統的預設值而定,但是在SQL Server中如果需要儲存與處理Unicode字元時,必須符合以下兩個條件。

必須條件:
1. 資料欄位需要支援 Unicode,請使用 nchar,nvarchar,ntext 型態。
2. 查詢Unicode 字串常數需要 N 前置詞,請參考以下文件:  

INF:SQL Server 中的 Unicode 字串常數需要 N 前置詞
http://support.microsoft.com/?id=239530   

相信大家先前對於上述的處理方式都已有一定的了解,但我最近遇到一個滿特別的情況,使用者有輸入一個罕用字,而在資料庫中因為使用nvarchar的型態,所以儲存的部份一切正常,但是只要查詢條件中有使用到此罕用字時,就會有查詢筆數上的問題,後來經過確認,發現主要是此字是屬於香港增補字符集,所以在處理上必須指定特定的定序,說明如下,其中最令人高興的事,在 SQL Server 2012中特別針對增補字符集推出了一個以 SC 結尾的定序,差別就在於如果你使用一般的定序時,如果有使用到增補字符集,透用LEN的函數查詢時,一個字會變成長度2,而如果使用類似substring進行取字時就會有問題,而Supplementary Character (SC) Collations就是主要用來解決這個問題,所以還沒升級的,動作要快了哦!
----------------------------------------------------------------------------------------------------------------------------------------------
用ADO.NET讀取ORACLE VARCHAR中的BIG5罕用字
http://blog2.darkthread.net/post-2008-10-10-read-tdcc-char-from-oracle-varchar.aspx
http://72.15.222.47/post-2008-12-04-write-user-define-char-to-oracle-varchar2.aspx



mysql自動備份

不建議的 MySQL 資料備份方式

http://phpbb-tw.net/phpbb/viewtopic.php?t=46722


討論windows下自動備份批次檔
http://xoops.tn.edu.tw/modules/xforum/viewtopic.php?post_id=28444
適當修改以下內容,然後存成一個 .bat 檔。

代碼:
@echo off
REM /* MysqlBinPath: MySQL 可執行檔路徑,結尾請不要放 "\"
REM * BackupPath: 放置 sql 備份檔的位置,結尾請不要放 "\"
REM * DBhost: 資料庫主機的位址,可用 dn 或 ip
REM * DBuser: 資料庫使用者名稱
REM * DBpass: 資料庫使用者密碼
REM * DBname: 資料庫名稱 
REM * Argument: 其他的參數 */
SET MysqlBinPath=D:\AppServ\mysql\bin
SET BackupPath=D:\Backup
SET DBhost=127.0.0.1
SET DBuser=username
SET DBpass=password
SET DBname=databasename
SET Argument=--opt --compress --force --default-character-set=utf8
REM /* 以下不必修改 */

REM /* 取得日期。參照: http://alexchuo.blogspot.com/2006/07/blog-post.html */
FOR /F "tokens=1-4 delims=/ " %%a IN ("%date%") DO (
SET _MyDate=%%a-%%b-%%c %%d
)

REM /* 以日期為檔名,匯出 .sql 檔案。 */
echo 資料庫 %DBname% 備份中……
"%MysqlBinPath%\mysqldump" --host=%DBhost% --user=%DBuser% --password=%DBpass% %Argument% %DBname% > "%BackupPath%\%_MyDate%.sql"

REM /* 偵錯處理,發生錯誤就停住畫面以便看清楚錯誤訊息。 */
IF NOT %ERRORLEVEL% == 0 (
del "%BackupPath%\%_MyDate%.sql
echo.
echo 不好了,好像出了什麼問題的樣子。請看上面的訊息吧!
pause
)

之後,只要執行這個 .bat 檔,就會在設定的目錄中依目前日期產生以 "西元年/月/日 星期幾.sql" 為檔名的備份檔了。您可以先自己執行一次試試看有沒有成功。
使用 Windows 的排程工具(控制台/排定的工作)定期執行這個 .bat 檔,就能輕鬆地遠端定期自動備份資料庫囉。

備份出來的 .sql 檔案並不會自動壓縮,您可以自行將這些 .sql 檔壓縮起來保存。
MySQL備份教學
http://www.dotblogs.com.tw/michaelchen/archive/2015/01/06/mysql_backup.aspx
[匯出單一資料庫]

mysqldump -u root -e -q -p --default-character-set=utf8 database_name > back.sql

[匯出單一資料表]

mysqldump -u root -e -q -p --default-character-set=utf8 database_name datatable_name > back.sql


[匯出全部資料庫]

mysqldump -u root -e -q -p --default-character-set=utf8 --all-databases > back.sql

[匯入單一資料庫]

mysql -u root -p database_name < back.sql --default-character-set=utf8

[匯入單一資料表]

mysql -u root -p database_name datatable_name < back.sql --default-character-set=utf8

[匯入全部資料庫]

mysql -u root -p < back.sql --default-character-set=utf8

[直接匯入到另外一台資料庫]

mysqldump -u root -e -q --password=XXX --all-databases --default-character-set=utf8 | mysql -u root -h IP位置 --password=XXXX --default-character-set=utf8

==============================

mysqldump 其實還有很多參數可以用,想知道可以到官網去查詢  http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html



在Windows Server設定自動備份MySQL資料庫

http://www.askasu.idv.tw/index.php/2011/07/08/1435/

MySQL單一資料庫備份還原語法
http://www.ddjhs.tc.edu.tw/admin/mysql/mysqldump.txt

◎MySQL單一資料庫備份還原語法:

1.備份
>mysqldump -u使用者名稱 -p密碼 資料庫名稱 > 備份檔名.sql
或
>mysqldump -u使用者名稱 -p密碼 資料庫名稱 > 備份檔名.sql --default-character-set=latin1 (中文資料庫有語系困擾時)

2.還原
>mysql -u使用者名稱 -p密碼 資料庫名稱 < 備份檔名.sql


◎MySQL全部資料庫備份還原語法:

1.備份
>mysqldump -u使用者名稱 -p密碼 --all-database > 備份檔名.sql
或
>mysqldump -u使用者名稱 -p密碼 --all-database > 備份檔名.sql --default-character-set=latin1 (中文資料庫有語系困擾時)

2.還原
>mysql -u使用者名稱 -p密碼 < 備份檔名.sql


◎注意事項:
1.備份檔內容之資料庫名或資料表名中若含'-',則該名稱前後要加'`',以免還原時出錯!使用舊版之mysqldump時會有所缺漏。
2.新版之MySQL對於關鍵字有所增補,如:release……等。若舊版有使用到(資料表或欄位名稱)可能造成還原時出錯!


----------其它有用的語法------------------------------------------

◎替換某欄位部份內容之語法:

1.所需之字串替換函式:

 REPLACE(str,from_str,to_str)

2.完整SQL語法:

 UPDATE `資料表` SET `欄位名` = REPLACE(`欄位名`,'舊字串','新字串') WHERE `欄位名` LIKE '%舊字串%'


如何在 Batch 檔取得系統的日期、時間欄位 (第三版)

http://blog.miniasp.com/post/2009/11/03/How-to-get-system-date-time-in-batch-file-part-III.aspx

從 Batch 取得日期時間還真囉唆,每次都要查資料 Copy / Paste 才能寫出計算日期時間的指令碼,最近有有需求要抓到「上一個月」的年份與月份,所以有用到數值運算的指令 ( SET /A ),所以乘機再整理一遍取得日期、時間欄位的程式碼。
取得今天日期 ( 其中 P0 代表「不滿 10 自動補零」的意思 )
REM 取得今天的年、月、日 (自動補零)
SET TodayYear=%date:~0,4%
SET TodayMonthP0=%date:~5,2%
SET TodayDayP0=%date:~8,2%

REM 取得今天的年、月、日 (純數字)
REM 2010/08/03 更新:以下是為了修正 Batch 遇到 08, 09 會視為八進位的問題
IF %TodayMonthP0:~0,1% == 0 (
 SET /A TodayMonth=%TodayMonthP0:~1,1%+0
) ELSE (
 SET /A TodayMonth=TodayMonthP0+0
)

IF %TodayMonthP0:~0,1% == 0 (
 SET /A TodayDay=%TodayDayP0:~1,1%+0
) ELSE (
 SET /A TodayDay=TodayDayP0+0
)

echo 日期 %TodayYear%/%TodayMonth%/%TodayDay%
echo 日期 %TodayYear%/%TodayMonthP0%/%TodayDayP0%
取得上個月的年、月 ( 其中 P0 代表「不滿 10 自動補零」的意思 )
REM 取得上個月的年、月
SET /A LastMonthYear=%TodayYear%+0
SET /A LastMonthMonth=%TodayMonth%-1
SET /A LastMonthMonthP0=%LastMonthMonth%
REM 修正年份與月份的數值
IF %LastMonthMonth% EQU 0 (SET /A LastMonthYear=%thisYear%-1)
IF %LastMonthMonth% EQU 0 (SET LastMonthMonth=12)
IF %LastMonthMonth% LSS 10 (SET LastMonthMonthP0=0%LastMonthMonth%)

echo 日期 %LastMonthYear%/%LastMonthMonth%
echo 日期 %LastMonthYear%/%LastMonthMonthP0%
取得當下時間 ( 時、分、秒、豪秒 )
REM 取得時、分、秒 、豪秒
SET Hour=%NowTime:~0,2%
SET Minute=%NowTime:~3,2%
SET Second=%NowTime:~6,2%
SET /A Millisecond=%NowTime:~9,2%*10

echo 時間 %Hour%:%Minute%:%Second%.%Millisecond%
上述關於取得「上個月」的年、月的重點就在於 Batch 可以提供基本的數學運算。另外對於 %time% 的精準度只有到「百分之一秒」,為了改以表達「豪秒」表達所以我將取得的數字乘以 10 處理。
執行 HELP SET 指令後關於 /A 選項(switch)的說明如下:
/A 指定在等號右方的字串是一個要被運算的數字運算式。您可以用運算式進行簡單的運算,而且支援下列
的運算子 (依照運算優先順序由高到低排列):

    ()                  - 組成一群
    ! ~ -               - 一元運算符
    * / %               - 數字運算元
    + -                 - 數字運算元
    << >>               - 邏輯位移
    &                   - 位元運算 and
    ^                   - 位元運算 exclusive or
    |                   - 位元運算 or
    = *= /= %= += –=    - 指定
    &= ^= |= <<= >>=
    ,                   - 運算式分隔字元

如果您使用了任何邏輯或餘數運算子,您必須將運算式兩邊括上引號。任何在運算式中非數字的字串會
被當作環境變數,並且在使用前會先將這些環境變數轉換為數字。如果您所指定的環境變數名稱尚未在
目前環境中定義,那麼它的值會被設為 0。這可以讓您用環境變數值來做運算,而不必打入所有的 % 
符號來取得它的值。如果 SET /A 是用指令檔之外的命令列執行,它會顯示運算式最後的數值。指定運
算子需要有個環境變數在等號的左方。0x 字首在數字前方代表十六進位數字、0b 字首代表二進位數字
或 0 字首代表八進位數字,否則數字值都是指十進位數字。所以 0x12 就和 18、022 等相同。請注意
八進位數字可能容易弄錯: 像 08 和 09 就不是正確的數字,因為 8 和 9 並不是八進位的正確數字。
相關連結