in

Darkthread

黑暗執行緒
All Tags » .NET » CODE (RSS)

Browse by Tags

  • 挑戰自訂條件流程的彈性極限

    在開發強調"彈性"的系統功能時,我偶爾會遇到要由動態產生的複雜運算式決定流程的情境,例如: "( (a + b) > 0 || c > 100 && ( d || e ) )",當運算式參數可預期或是會固定依某些條件變化時,這倒還不算什麼難題;但若是 運算式被要求開放使用者或使用元件的開發人員自由設定 ,就真的不是一般Coding做法能解決的,得寫個Parser解析使用者輸入的運算式再算出結果。而Parser得掌握所有的語法規則,涵蓋各種可能出現的組合,要寫得夠強韌不易出錯實非易事。 相形之下,Javascript裡有eval...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 10-01-2009
  • MEMO-利用DataColumn.Expression自動計算百分比

    【註: 沒營養的 老人備忘筆記 系列又來了,熱血青年請自行迴避。】 以下範例展示如何利用.NET DataColumn.Expression自動計算百分比: (適用: Mini C# Lab ) using System; using System.IO; using System.Threading; using System.Data; //REFDLL System.Data;System.Xml public class CSharpLab { public static void Test() { DataTable t = new DataTable(); t.Columns.Add...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 08-12-2009
  • TIPS-C# 3.0的Dictionary元素簡式宣告法

    為了找記憶中依稀存在的C# 3.0 Dictionary元素簡式宣告法,耗了我快五分鐘,下定決心把它寫成一篇KB,以拯救中老年人日益衰退的記憶力。 public static void Test() { //要宣告固定元素的陣列,我們都知道可以簡寫成 string [] strAry = { "A" , "B" , "C" , "D" }; //但要宣告固定元素Dictionary,傳統上只能一步一腳印 Dictionary< string , string > dctTradWay = new Dictionary<...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 07-20-2009
  • CODE-分贓程式的寫法

    把一筆錢依特定的比例分給幾個人是我工作上常要處理的需求。由於金額必須四捨五入到元或分,因此常需面對除不盡的錢要設法攤掉的問題。例如100元平分給三個人,每人33元後,最後的1元要發給三人之一的幸運兒,變成一人34, 兩人33的分配結果。 以前年紀小不懂事,很直覺的想法是先用100*1/3四捨五入得到33把錢分一分,之後再跑一個迴圈(沒辦法,總不能打電話請這三個人過來猜拳吧?)把分剩的錢(總金額大、人數多時餘下數十上百元也是有可能滴)每次一元地發下去,直到發光為止。 說實在說,當初並不覺得這個寫法有什麼不對,直到有前輩指點了另一種更精巧的演算法,一口氣就能把錢攤到一毛不剩,省去分完一輪後處理餘數的麻煩...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 06-10-2009
  • String.Format yyyy/MM/dd? 誤會大了

    今天才發現一件誤很大的事... Console.WriteLine(string.Format("{0:yyyy/MM/dd}", DateTime.Today)); 結果應該是什麼? 不就是2009/04/01嗎? 答案是不一定,也有可能是2009-04-01哦! 根據 本草綱目 MSDN Library 記載,日期格式裡的"/"代表的並不是斜線符號,而是DateTimeFormatInfo.DataSeparator。 Represents the date separator defined in the current DateTimeFormatInfo...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 04-01-2009
  • CODE-用C#將Word內嵌圖另存成JPG檔

    目標是寫一個工具程式,將Word中的第一個內嵌圖檔另存成JPG。 以下的程式範例有幾個重點可以參考: 利用C#操作Word物件 Path.GetFullPath可以將相對路徑轉成絕對路徑,跟ASP.NET的Server.MapPath有異曲同工作之妙 內嵌圖檔以InlineShape方式存在,網路上有很多範例是將它Copy到Clipboard(剪貼簿)再當作圖檔取出,但我測試不成功,C#看不到Word貼上的東西。最後利用InlineShape轉成Metafile後達到另存圖檔的目標。 Image.GetThumbnailImage可以直接產生縮圖,可惜它不會自動保持寬高比例,要自己計算。 using...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 12-10-2008
  • CODE-FTP上傳檔案的精簡寫法

    上回寫過 CODE-使用C#程式從網站下載檔案 , 從chicken的回應學會了WebClient可以一行打死的神技。今天遇到的需求是用FTP上傳檔案到一個需要登入的FTP網站,WebClient可以勝任嗎? 利用new NetworkCredential設定帳號密碼,URI用ftp:開頭,並列上完整的檔案路徑/名稱,三行搞定。 using System; using System.IO; using System.Net; public class CSharpLab { public static void Test() { string userName = "ftpAccount"...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 12-08-2008
  • CODE-使用C#程式從網站下載檔案

    寫程式的人大家應該都有類似的經驗: 我想要Blah Blah,應該怎麼做? 這問題要是發生在十年前,肯定是項艱鉅的挑戰,只能到圖書館/書店翻書找看看,是否找得到跟所耗費的時間,就要看平日是否有積德行善,常扶老太太過街。運氣好一點的人,身旁剛好有高人前輩,開口問一下就有答案,多半上輩子是樂善好施員外投胎轉世才有此等造化。 Google的出現徹底改變了知識交流運用的模式,我認為它的革命性並不亞於工業革命。現在,只要接上Internet,動幾下手指,原本也許要花上十天半個月才找得到的答案,一瞬間就送到眼前。雖然有報導誇張地指出: 搜尋成癮,大腦變抽水馬桶 ,但也不能否認,這個時代還不懂得善用搜尋引擎及Internet...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 10-13-2008
第2頁,共2頁 (18個項目) < 上一頁 1 2
Powered by Community Server (Non-Commercial Edition), by Telligent Systems