Time of Update: 2017-02-27
一、先來說說數組的不足(也可以說集合與數組的區別)
Time of Update: 2017-02-27
在《爬蟲/蜘蛛程式的製作(C#語言)》一文中,已經介紹了爬蟲程式實現的基本方法,可以說,已經實現了爬蟲的功能。只是它存在一個效率問題,下載速度可能很慢。這是兩方面的原因造成的:
Time of Update: 2017-02-27
在windows應用程式中文檔的列印是一項非常重要的功能,在以前一直是一個非常複雜的工作,Microsoft .net Framework的列印功能都以組件的方式提供,為程式員提供了很大的方便,但是這幾個組件的使用還是很複雜的,有必要解釋一下。 列印操作通常包括以下四個功能1 列印設定 設定印表機的一些參數比如更改印表機驅動程式等2 版面設定 設定頁面大小紙張類型等3 預覽列印 類似於word中的預覽列印4 列印
Time of Update: 2017-02-27
最近在電腦城上買了一根NOKIA3210的資料線,玩了幾天改LOGO、改鈴聲後也將資料線扔在一邊。直到前幾天在Http://oxygensoftware.com上看到有發手機簡訊息的二次開發控制項,才想起多日不用的資料線,而且最近在學C#,覺得用C#做個發簡訊息的程式也不錯,經過多天的測試,終於實現用電腦+資料線+手機的模式,實現在單位的區域網路平台上傳送簡訊息了。
Time of Update: 2017-02-27
POP郵件協議的優點在於它是一個開放的標準,有著完善的文檔,這就使得編寫POP郵件客戶程式不那麼困難,只要掌握了POP、SMTP的基礎知識,就可以寫出代理程式來執行各種任務,例如過濾廣告和垃圾郵件,或提供e-mail自動應答服務。 Hotmail是世界上影響最廣的Web郵件系統,遺憾的是,當我們要為Hotmail編寫獨立的客戶程式(不通過瀏覽器訪問的客戶程式)時,馬上就會遇到Hotmail不提供POP網關這一障礙。
Time of Update: 2017-02-27
using System;using System.IO;using System.Text;namespace WAV{ /// <summary> /// Summary description for Wav. /// </summary> public class Wav { public Wav() { // // TODO: Add constructor logic here // } [STAThread] static void Main(string[
Time of Update: 2017-02-27
由於抽象類別本身表達的是抽象的概念,因此類中的許多方法並不一定要有具體的實現,而只是留出一個介面來作為衍生類別重載的介面。舉一個簡單的例子,“圖形”這個類是抽象的,它的成員方法“計算圖形面積”也就沒有實際的意義。面積只對“圖形”的衍生類別比如“圓”、“三角形”這些非抽象的概念才有效,那麼我們就可以把基類“圖形”的成員方法“計算面積&rdquo
Time of Update: 2017-02-27
有時候,基類並不與具體的事物相聯絡,而是只表達一種抽象的概念,用以為它的衍生類別提供一個公用的介面。為此,C#中引入了抽象類別(abstract
Time of Update: 2017-02-27
當類中的方法聲明前加上了virtual修飾符,我們稱之為虛方法,反之為非虛。使用了virtual修飾符後,不允許再有static,abstract,或override修飾符。對於非虛的方法,無論被其所在類的執行個體調用,還是被這個類的衍生類別的執行個體調用,方法的執行方式不變。而對於虛方法,它的執行方式可以被衍生類別改變,這種改變是通過方法的重載來實現的。下面的例子說明了虛方法與非虛方法的區別。程式清單14-3:using System;class A{ public void
Time of Update: 2017-02-27
C# 使用者經常提出兩個問題:“我為什麼要另外編寫代碼來使用內建於 Windows 中的功能?在架構中為什麼沒有相應的內容可以為我完成這一任務?”當架構小組構建他們的 .NET 部分時,他們評估了為使 .NET 程式員可以使用 Win32 而需要完成的工作,結果發現 Win32 API 集非常龐大。他們沒有足夠的資源為所有 Win32 API 編寫託管介面、加以測試並編寫文檔,因此只能優先處理最重要的部分。許多常用操作都有託管介面,但是還有許多完整的 Win32
Time of Update: 2017-02-27
作為軟體設計和開發人員大都有過使用DLL(動態串連庫)的經曆,DLL的產生使得我們的應用程式在可維護性、代碼的重複使用等方面都有了很大的提高。以前用的DLL一般都是用Visual C++、Delphi或者VB等程式設計語言來編寫的,這種DLL的編寫和使用,我們大都已經比較習慣了。作為新一代的程式開發語言--Visual C#,到底是如何編寫和使用DLL的呢!本文就試著就這方面的問題來進行簡單的介紹。 Visual
Time of Update: 2017-02-27
GUID(全域統一標識符)是指在一台機器上產生的數字,它保證對在同一時空中的所有機器都是唯一的。通常平台會提供產生GUID的API。產生演算法很有意思,用到了乙太網路卡地址、納秒級時間、晶片ID碼和許多可能的數字。GUID的唯一缺陷在於產生的結果串會比較大。”1. 一個GUID為一個128位的整數(16位元組),在使用唯一識別碼的情況下,你可以在所有電腦和網路之間使用這一整數。 2. GUID
Time of Update: 2017-02-27
定義瀏覽目錄dialog類:public class MyFolderDialog : System.Windows.Forms.Design.FolderNameEditor { FolderNameEditor.FolderBrowser fDialog = new
Time of Update: 2017-02-27
1 定義訊息 在c#中訊息需要定義成windows系統中的原始的16進位數字,比如 const int WM_Lbutton = 0x201; //定義了滑鼠的左鍵點擊訊息 public const int USER = 0x0400 // 是windows系統定義的使用者訊息 2 訊息發送 訊息發送是通過windows提供的API函數SendMessage來實現的它的原型定義為
Time of Update: 2017-02-27
靜態建構函式是C#的一個新特性,其實好像很少用到。不過當我們想初始化一些靜態變數的時候就需要用到它了。這個建構函式是屬於類的,而不是屬於哪裡執行個體的,就是說這個建構函式只會被執行一次。也就是在建立第一個執行個體或引用任何靜態成員之前,由.NET自動調用。 class SimpleClass { // Static constructor static SimpleClass() { // } } 在使用靜態建構函式的時候應該注意幾點:
Time of Update: 2017-02-27
C#中的@符號其實有很多的用法,我們來看看@有什麼神奇之處。1.限定字串用 @ 符號加在字串前面表示其中的逸出字元“不”被處理。如果我們寫一個檔案的路徑,例如"D:\文字檔"路徑下的text.txt檔案,不加@符號的話寫法如下:string fileName = "D:\\文字檔\\text.txt"; 如果使用@符號就會比較簡單:string fileName = @"D:\文字檔\text.txt";
Time of Update: 2017-02-27
在.net Framework中,System.Convert類中提供了較為全面的各種類型、數值之間的轉換功能。其中的兩個方法可以輕鬆的實現各種進位(2進位、8進位、10進位、16進位...)的數值間的轉換:Convert.ToInt32(string value, int fromBase):
Time of Update: 2017-02-27
程式設計語言:C#類 別:(網路應用,實用演算法)主要功能:查詢一個IP所有的IP段. 關鍵:從Byte數組到ulong的轉換出來的數字和 IPAddress.Address 傳回值的是不一樣的.using System;using System.Collections.Generic;using System.Text;using System.Net;namespace IPUtility{ class Program&
Time of Update: 2017-02-27
一、發生的背景 在開發新項目中使用了新的語言開發 C# 和新的技術方案 WEB Service,但是在新項目中,一些舊的模組需要繼續使用,一般是採用 C 或 C++ 或 Delphi 編寫的,如何利用舊模組對於開發人員來說,有三種可用方法供選擇:第一、將 C 或 C++ 函數用 C# 徹底改寫一遍,這樣整個項目代碼比較統一,維護也方便一些。但是儘管微軟以及某些書籍說,C# 和 C++ 如何接近,但是改寫起來還是很痛苦的事情,特別是 C++ 裡的指標和記憶體操作;第二、將 C 或
Time of Update: 2017-02-27
單元測試(Unit Test)已經成為開發過程中不可分割的一部分,也是refactoring的基礎,在Wince和Windows Mobile開發native C++時可以使用CppUnitLite進行單元測試。在其他平台開發C++的時候,我一直使用CppUnit進行單元測試,可是CppUnit不支援Wince平台,因此在Wince下選擇CppUnitLite進行單元測試。CppUnitLite是CppUnit的作者Michael