Time of Update: 2018-12-08
c#下壓縮解壓,主要是用第三方類庫進行封裝的。ICSharpCode.SharpZipLib.dll類庫,連結地址為你官方下載連結。壓縮主要是用流的方式進行壓縮的。壓縮檔及檔案夾。檔案壓縮很簡單,把待壓縮的檔案用流的方式讀到記憶體中,然後放到壓縮流中。就可以了。檔案夾就稍微麻煩下了。因為要把待壓縮的檔案夾解壓後保留檔案夾檔案的階層。所以我的實現方式就是 遞迴遍曆檔案夾中的檔案。計算其相對位置放到壓縮流中。代碼如下複製代碼 代碼如下:/// <summary> ///
Time of Update: 2018-12-08
總在寫 總在錯, 面試也還忘記學習就是這麼個過程, 溫故才知新, 望自己謹記忘記不要緊複習就好//排序是有很多種方法的 ,完成從小到大的排列 複製代碼 代碼如下:#include <stdio.h>void sort(int *a,int len){int i=0; int j; int t; for(i=0;i<len;i++) { for(j=0;j<len-i-1;j++) { if(a[j]>a[
Time of Update: 2018-12-08
複製代碼 代碼如下:/// <summary> /// 產生不重複隨機數列表執行個體 /// </summary> /// <param name="count">不重複數數量</param> /// <returns>不重複數列表</returns> private static List<int> GetRandomList(int
Time of Update: 2018-12-08
1. 前序/中序/後序遍曆(遞迴實現)複製代碼 代碼如下:// 前序走訪void BT_PreOrder(BiTreePtr pNode){ if (!pNode) return; visit(pNode); BT_PreOrder(pNode->left); BT_PreOrder(pNode->right); }// 中序遍曆void BT_PreOrder(BiTreePtr pNode){ if (!pNode) return;
Time of Update: 2018-12-08
看如下代碼:複製代碼 代碼如下:#include<iostream>class TestConstructor{public: TestConstructor() { std::cout<<"TestConstructor()"<<std::endl; } ~TestConstructor() {
Time of Update: 2018-12-08
複製代碼 代碼如下:using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
Time of Update: 2018-12-08
C#反射的入門學習首先要明白C#反射提供了封裝程式集、模組和類型的對象等等。那麼這樣可以使用反射動態建立類型的執行個體,將類型綁定到現有對象,或從現有對象擷取類型並調用其方法或訪問其欄位和屬性。如果代碼中使用了屬性,可以利用反射對它們進行訪問。 MSDN描述: 反射通常具有以下用途: 使用 Assembly 定義和載入程式集,載入在資訊清單中列出的模組,以及從此程式集中尋找類型並建立該類型的執行個體。 使用 Module
Time of Update: 2018-12-08
最近把以前製作的程式重新寫了一下動了一個大手術 高品質仿照的TX的程式先看幾個拖動過程中顯示當前滑鼠下一小塊的映像資訊 尺寸、顏色資訊的 注意 這裡顏色是用的ARGB 本來的話RGB就夠了 可是我把那個做成了控制項 不僅可用 其他地方也可用作映像的選取 具體看代碼就知道了並且我還加了一個可以的同時把滑鼠也捕獲下來 現在看到的是我自己的程式 那個工具條啥的 是從TX的程式上面拔下來的上面是幾個工具條上的工具的三種粗細型號的展示 看到的藍色的粗的刷筆 本來想的不應該是這個效果的
Time of Update: 2018-12-08
問題的開始是由C#傳傳看主群裡的印醒提出來的,下面我來說一下解決方案吧 其實表面上看是很簡單的 開始吧,現在有兩個表單Form1主表單,Form2子表單 而且我相信大部分人都會這樣寫 在子表單的Load事件中 這樣寫 複製代碼 代碼如下:this.StartPosition = FormStartPosition.CenterParent; 其實這樣寫是不對的,正確的寫法應該是 複製代碼 代碼如下:this.StartPosition =
Time of Update: 2018-12-08
主表單Form1關鍵代碼: 將子表單最為對話方塊模式彈出,當表單關閉或取消時更新主表單 複製代碼 代碼如下:private void simpleButton1_Click(object sender, EventArgs e) { Form2 f2 = new Form2(); f2.Owner = this; DialogResult result=f2.ShowDialog(); if (result == DialogResult.Cancel) { this.gridControl1.
Time of Update: 2018-12-08
在C#中定義常量的方式有兩種,一種叫做靜態常量(Compile-time constant),另一種叫做動態常量(Runtime constant)。前者用“const”來定義,後者用“readonly”來定義。 對於靜態常量(Compile-time constant),它的書寫方式如下: public const int MAX_VALUE = 10; 為什麼稱它為靜態常量呢,因為如上聲明可以按照如下理解(注意:如下書寫是錯誤的,會出編譯錯誤,這裡只是為了方便說明)。 public
Time of Update: 2018-12-08
在項目開發過程中,經常會使用到c++ 的url編碼和解碼,本文將以此問題詳細介紹提示,需要的朋友可以參考下複製代碼 代碼如下:#pragma once #include <iostream> #include <string> #include <windows.h> using namespace std; class strCoding { public: strCoding(void); ~strCoding(void); void UTF_8ToGB2
Time of Update: 2018-12-08
引言: C# 2.0 中還引入了可空類型,可空類型也是實值型別,只是可空類型是包括null的實值型別的,下面就介紹下C#2.0中對可空類型的支援具體有哪些內容(最近一直都在思考如何來分享這篇文章的,因為剛開始覺得可空類型使用過程中比較簡單,覺得沒有講的必要,但是考慮到這個系列的完整性,決定還是嘮叨下吧,希望對一些不熟悉的人有協助)。一、為什麼會有可空類型 如果朋友們看了我之前的分享,對於這一部分都不會陌生,因為我一般介紹C#特性經常會以這樣的方式開頭的, 因為每個特性都是有它出現的原因的(
Time of Update: 2018-12-08
一直對C++中的delete和delete[]的區別不甚瞭解,今天遇到了,上網查了一下,得出了結論。做個備份,以免丟失。 C++告訴我們在回收用 new 分配的單個對象的記憶體空間的時候用 delete,回收用 new[] 分配的一組對象的記憶體空間的時候用 delete[]。 關於 new[] 和 delete[],其中又分為兩種情況:(1) 為基礎資料型別 (Elementary Data Type)分配和回收空間;(2) 為自訂類型分配和回收空間。 請看下面的程式。 複製代碼 代碼如下:#
Time of Update: 2018-12-08
大量的安全性漏洞是由於電腦算術運算的微妙細節引起的, 具體的C語言, 諸如符號數和無符號數之間轉換, 算術運算的越界都會導致不可預知的錯誤和安全性漏洞, 具體的案例數不勝數. 作為一個系統程式員, 有必要對這些細節有深入的瞭解. 本篇參考csapp, 主要介紹如何判斷算術運算的越界問題. (雖然本篇的代碼經過大量的測試, 但本人仍然無法保證代碼的正確性, 希望大家錯誤修正). 講解的原則是"擺定理, 不證明, 寫代碼". 具體的證明過程在csapp中有詳細的講解, 也不是太難.
Time of Update: 2018-12-08
一般情況下,一個類都會有多個建構函式。隨著時間的推移,成員變數、建構函式不斷增加。為了處理這種情況最方便的辦法就是:在聲明變數的時候進行初始化,而不是在每個建構函式中進行。無論是類成員(靜態變數)合適執行個體變數,我們都應該充分利用初始化器的文法。 C#編程在,一般在聲明一個變數的同時我們會對其進行初始化: 複製代碼 代碼如下:1 class Employee 2 { 3 private List<Employee> empList = new
Time of Update: 2018-12-08
這裡,我們 來說一說C#的資料結構了。①什麼是資料結構。資料結構,字面意思就是研究資料的方法,就是研究資料如何在程式中組織的一種方法。資料結構就是相互之間存在一種或多種特定關係的資料元素的集合。 程式界有一點很經典的話,程式設計=資料結構+演算法。用原始碼來體現,資料結構,就是編程。他有哪些具體的關係了,(1) 集合(Set): 1.1(a)所示,該結構中的資料元素除了存在“同屬於一個集合”的關係外,不存在任何其它關係。 集合與數學的集合類似,有無序性,唯一性,確定性。(2)
Time of Update: 2018-12-08
字元組:在同一個位子可能出現的各種字元。 用Regex判斷數字字元: re.Search("[0123456789]",charStr) != None 其中[0123456789]以字串形式給出Regex,他是一個字元組,表示可以是0到9的任意一個字元。 Net中Regex.IsMatch(charStr,"[0123456789]");
Time of Update: 2018-12-08
建立一個參考型別的執行個體時, 首先為執行個體的資料欄位分配記憶體, 然後初始化對象的附加欄位(對象指標、同步塊索引), 最後調用類型中定義的執行個體構造器來設定對象的初始化狀態。 構造參考型別的對象時,在調用類型的執行個體構造器之前,為對象分配所有欄位的記憶體總是被先歸零或為null。 執行個體構造器永遠不能被繼續。如果定義的類中沒有顯式構造器, c#編譯器將定義一個預設構造器,在它的實現中,只是簡單調用基類的無參構造器。 所以: public class SomeType{} 等價於
Time of Update: 2018-12-08
WCF執行個體(帶步驟) 複製代碼 代碼如下:<xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" /> 本篇轉自百度文檔,自己試過,確實可以用。 以訂票為例簡單應用wcf 建立一個wcf服務應用程式在IService1.cs定義服務契約 複製代碼 代碼如下:namespace WcfDemo { // 注意: 如果更改此處的介面名稱 "IService1",也必須更新 Web.config