不知道有沒有人在開發系統時有沒有這個困擾?
就是資料表的ID值為一固定長度,但如同流水號一樣編碼?
舉例來講,第一筆資料為00001,第15筆資料為00015
一般來講我們會怎麼做呢?
我剛開始遇到這個情況時 (好幾年前在當學生做系統時)
都會寫上長長一段 if else
if(n < 10) strID = "0000" + n.ToString()
else if (n < 100) strID = "000" + n.ToString()
..............................
要是位數定長一點,就等於是宣告坎尼的死期了 囧>
所以,如果還有人像坎尼好幾年前那樣笨笨的寫if else的人
記得把下面這兩個string的方法給記起來:PadLeft , PadRight
第一個參數不用講,就是前述情境所說的 要傳入的id值
第二個參數為字串的長度.....就是要回傳的長度
第三個參數為補齊字元,把剩下的長度補齊用
比方說傳入0,會傳出00001這類的字串
傳入@,回傳的字串就會是 @@@@1
最後一個參數是要補齊的方式:有LeftPad和RightPad兩種
LeftPad → 00015 , RightPad → 15000
其實參數講完,上面這個方法的內容也不太需要講了 XD
要注意的就是,傳入的ID記得加1 (因為我是傳入目前最大的ID,新ID必需加1)
Response.Write("New ID is " + GetNewID(1,6,'0',"left"));
上面這串程式碼就會在畫面上顯示出:New ID is 000001
訂閱:
張貼留言 (Atom)
Google Spreadsheet 裡用規則運算式
最近因為工作關係,遇到要用 Google Form 及 Google Sheet 所以研究了 Google Sheet 裡的一些 function 怎麼用 首先,分享一下如何在 Google Sheet 裡用規則運算 :D
-
今天坎尼去上課老師講了一題很有趣的題目 所以回到家坎尼就順手試驗了一下 I. XOR (exclusive OR) XOR 是邏輯運算子之一,定義為: 當兩數的值不同才為 true,相同則為 false 其他相關說明可以參考 維基百科:XOR II. 程式 以往的做法會宣...
-
好久沒開 Chart Control 議題了 剛好前陣子 Codeplex 出現可以輕鬆建立 Excel 檔案的 Library- NPOI 於是坎尼想說研究一下,看能不能把 Chart Control 匯出圖片到 Excel 中 沒想到只花了不到1小時就研究...
-
上個週末打開一個影片檔,發現字幕檔是中英文混合的,造成字幕吃掉畫面很大的空間, 打開字幕檔一看,果然每一段時間都有先英文後中文的字幕: 因此我想要自己作成「只有中文」&「只有英文」兩個字幕檔,但這個檔案有6418 行,如果要手動一行一行的刪除...
沒有留言:
張貼留言