Log4net Visual Studio版的log4j

在撰寫Java程式時很習慣的使用log4j來當程式訊息的輸出記錄,只需要簡單的改變設定檔就可以改變訊息是要顯示於Console、存入資料庫或是存於檔案裡,而且可選擇對於不同層級的記錄,十分方便於開發的Debug。

log4j也有.net版本,就叫log4net,也是由Apache基金會開發維護,在使用上與log4j還蠻相似的,log4j在使用時只需把config檔放置於classes跟目錄就可以了,而log4net則需要手動載入此設定檔,安裝設定的方法如下。

Read More

Visual Studio Express .NET C#(C Shape)連接MySQL資料庫

Microsoft Visual Studio Exrpess是微軟提供的免費而且比較簡單的.NET開發工具,跟一套數萬元的Visual Studio有著許多限制,像是在連接資料庫時就提供了比較少連接選擇方式,雖然可以用ODBC的方式來解決部份的問題,不過效能上還是直接使用Connector比較好。

MySQL提供了一個免費的Connector,可藉由此Connector來直接連接資料庫,只需要加入參考的DLL,再使用連線字串建立連線就可以使用了,不過並無法直接使用Express提供的加入新資料來源(資料庫)精靈來操作。

底下提供一個簡單的範例,利用SQLCommand來進行查詢,回傳結果。

1.安裝My SQL Connector

可由MySQL官方網站下載,請選擇Windows (x86, 32-bit), MSI Installer或是mysql-connector-net-6.3.6.zip其中一個,mysql-connector-net-6.3.6-src.zip是需要自行Complier的原始碼內容。

2.加入參考

可直接於.NET分頁選擇MySQL.Data或是利用瀏覽來加入DLL,二者選一

Read More

[CSharp]把WebCam當QRCode的DeCode解碼器

QRCode的使用可分成編碼EnCode及解碼DeCode二部份,在各種平台上也有需多人依據編碼規則製作了許多可用的解碼與編碼器,之前文章也介紹過 [Java]QRCode產生VCard使用的是swetake這個framework,不過現在已經有統一的單位在研究 ZXing (“Zebra Crossing”) ,而且各種平台上均提供原始碼供大家使用,對於解碼DeCode、解碼EnCode及歪斜辨識效果、速度都讓人滿意。

二維條碼Quick Response Code的發展上大都份落在手機平台上,在桌機上不像是一般的一維條碼有專用的條碼機,所以在就只能利用WebCam的影像解析功能,即時拍照給QRCode解碼器zxing解碼DeCode。

執行畫面:

產生QRCode,使用kayway網站來產生QRCode

generator.png

Read More

[C#]簡單的GUI Form時鐘程式

這是一個Thread的簡單應用,利用一個Thread在背景執行,每一秒設定Form上的元件來顯示時分秒,因為Form上的元件不能在其它不是Form本身Thread的執行緒上執行,所以要利用Form的invoke來呼叫Delegate Function設定元件值。

Label1是時、Label2是分、Label3秒,然後run這個function每一秒會去加秒數,當為六十秒時自動幫分加一,而秒數變零,當分為六十分時,自動幫時加一,而分變零,當時為二十四時,時變零。

Form的設定如下:

C#時鐘form

以下是執行畫面:

C#時鐘執行中

Read More

[C#]演算法-氣泡排序法(Bubble Sort)

這個排序演算法主要是利用二個迴圈,一個是要執行的回合數,另一個是真正比對數列資料,一次比較相臨的二個數,大的放右側,小的放左側,則可得最後一個數為最大數,則此數不再比較,以此類推,可以排出一個左小右大的數列。

演算過程的畫面如下程式畫面:

要排列的數列串是2,3,8,1,5,9,10,12,14

氣泡排序1.png

這是執行的過程及結果,一共執行了八回合

其中紅色字為需要交換字、藍色是正在比較的二個數、綠色是已排好的數,不會再進行比較

氣泡排序2.png

Read More