Array類node
a) IEumerable接口是由foreach語句用於迭代數組的接口。正則表達式
b) ICollection接口派生於IEumerable接口,這個接口主要用於肯定集合中的元素個數,或用於同步。sql
c) IList接口派生於ICollection接口,Array類實現IList接口的主要緣由是IList接口定義了Item屬性,以使用索引器訪問元素。數據庫
屬性及方法express |
說明編程 |
Length數組 |
Length屬性返回數組中的元素個數。若是是一個多維數組,該屬性會返回全部階的元素個數。若是須要肯定一維中的元素個數,則可使用GetLength()方法緩存 |
LongLength安全 |
Length屬性返回int值,而LongLength屬性返回long值。若是數組包含的元素個數超出了32位int值的取值範圍,就須要使用LongLength屬性,來得到元素個數架構 |
Rank |
使用Rank屬性能夠得到數組的維數 |
CreateInstance() |
若是事先不知道元素的類型,就可使用該靜態方法,由於類型能夠做爲Type對象傳送給CreateInstance()方法。 |
SetValue() |
SetValue()方法設置數組的元素,其參數是每一維的索引 |
Clone() |
由於數組是引用類型,因此將一個數組變量賦予另外一個數組變量,就會獲得兩個指向同一數組的變量。而複製數組,會使數組實現ICloneable接口。這個接口定義的Clone()方法會建立數組的淺副本。 |
Sort() |
Array類實現了對數組中元素的冒泡排序。Sort()方法須要數組中的元素實現IComparable接口。簡單類型,如System.String和System.Int32實現了IComparable接口,因此能夠對包含這些類型的元素排序。 |
Count |
Count屬性可肯定集合中的元素個數,它返回的值與Length屬性相同 |
IsSynchronized SyncRoot |
IsSynchronized屬性肯定集合是不是線程安全的。對於數組,這個屬性老是返回false。對於同步訪問,SyncRoot屬性能夠用於線程安全的訪問。 |
CopyTo() |
利用CopyTo()方法能夠將數組的元素複製到現有的數組中。它相似於靜態方法Array.Copy() |
Add() |
Add()方法用於在集合中添加元素。對於數組,該方法會拋出NotSupportedException異常 |
Clear() |
Clear()方法可清除數組中的全部元素。值類型設置爲0,引用類型設置爲null |
Contains() |
Contains()方法能夠肯定某個元素是否在數組中。其返回值是true或false。這個方法會對數組中的全部元素進行線性搜索,直到找到所需元素爲止 |
IndexOf() |
IndexOf()方法與Contains()方法相似,也是對數組中的全部元素進行線性搜索。不一樣的是,IndexOf()方法會返回所找到的第一個元素的索引 |
Insert() |
對於集合,Insert()方法用於插入元素,對於數組,這方法拋出NotSupportedException異常 |
Remove() RemoveAt() |
對於集合, Remove()和RemoveAt()可刪除元素。對於數組,這些方法拋出NotSupportedException異常 |
IsFixedSize |
數組的大小老是固定的,因此這個屬性老是返回true |
IsReadOnly |
數組老是能夠讀/寫的,因此這個屬性返回false。 |
Item |
Item屬性能夠用整型索引訪問數組 |
MoveNext() |
MoveNext()方法移動到集合的下一個元素上,若是有這個元素,該方法就返回true。若是集合再也不有更多的元素,該方法就返回false |
Current |
屬性Current返回光標所在的元素 |
Reset() |
Reset()方法將光標從新定位於集合的開頭。許多枚舉會拋出NotSupportedException異常 |
GetEumerator() |
數組或集合執行帶GetEumerator()方法的IEumerable接口。GetEumerator()方法返回一個執行IEumerable接口的枚舉。接着,foreach語句就可使用IEumerable接口迭代集合了。 |
System.Text.String類
方法 |
做用 |
Compare() |
比較字符串的內容,考慮文化背景(區域),肯定某些字符是否相等 |
CompareOrdinal () |
與Compare同樣,但不考慮文化背景 |
Concat () |
把多個字符串實例合併爲一個實例 |
CopyTo () |
把特定數量的字符從選定的下標複製到數組的一個全新實例中 |
Format () |
格式化包含各類值的字符串和如何格式化每一個值的說明符 |
IndexOf () |
定位字符串中第一次出現某個給定子字符串或字符的位置 |
IndexOfAny () |
定位字符串中第一次出現某個字符或一組字符的位置 |
Insert () |
把一個字符串實例插入到另外一個字符串實例的指定索引處 |
Join () |
合併字符串數組,創建一個新字符串 |
LastIndexOf () |
與IndexOf同樣,但定位最後一次出現的位置 |
LastIndexOfAny () |
與IndexOfAny,但定位最後一次出現的位置 |
PadLeft () |
在字符串的開頭,經過添加指定的重複字符填充字符串 |
PadRight () |
在字符串的結尾,經過添加指定的重複字符填充字符串 |
Replace () |
用另外一個字符或子字符串替換字符串中給定的字符或子字符串 |
Split () |
在出現給定字符的地方,把字符串拆分爲一個子字符串數組 |
Substring () |
在字符串中獲取給定位置的子字符串 |
ToLower () |
把字符串轉換爲小寫形式 |
ToUpper () |
把字符串轉換爲大寫形式 |
Trim () |
刪除首尾的空白 |
System.Text.StringBuilder類
1) Length指定字符串的實際長度.
2) Capacity是字符串佔據存儲單元的最大長度。
名稱 |
做用 |
Append() |
給當前字符串添加一個字符串 |
AppendFormat() |
添加特定格式的字符串 |
Insert() |
在當前字符串中插入一個子字符串 |
Remove() |
從當前字符串中刪除字符 |
Replace() |
在當前字符串中,用某個字符替換另外一個字符,或者用當前字符串中的一個子字符串替換另外一字符串。 |
ToString() |
把當前字符串轉換爲System.String對象(在System.Object中被重寫) |
類 |
說明 |
使用大小可按需動態增長的數組實現 IList 接口。 |
|
管理位值的壓縮數組,該值表示爲布爾值,其中 true 表示位是打開的 (1),false 表示位是關閉的 (0)。 |
|
表示鍵/值對的集合,這些鍵/值對根據鍵的哈希代碼進行組織。 |
|
表示對象的先進先出集合。 |
|
表示鍵/值對的集合,這些鍵值對按鍵排序並可按照鍵和索引訪問。 |
|
表示對象的簡單的後進先出非泛型集合。 |
|
接口 |
說明 |
定義全部非泛型集合的大小、枚舉數和同步方法。 |
|
公開一種比較兩個對象的方法。 |
|
表示鍵/值對的非通用集合。 |
|
枚舉非泛型字典的元素。 |
|
公開枚舉數,該枚舉數支持在非泛型集合上進行簡單迭代。 |
|
支持對非泛型集合的簡單迭代。 |
|
定義方法以支持對象的相等比較。 |
|
使用自定義哈希函數爲對象提供哈希代碼。 |
|
表示可按照索引單獨訪問的對象的非泛型集合。 |
System.Collections.Generic命名空間
1) 更強的類型安全。
2) 更好的複用,由於類型實際上是一個參數。
3) 更高的效率。
4) 更清晰的約束。
System. Text.RegularExpressions命名空間
類 |
說明 |
表示來自單個成功的子表達式捕獲的結果。 |
|
表示一個捕獲組作出的捕獲的集合。 |
|
表示來自單個捕獲組的結果。 |
|
返回一次匹配中捕獲的組的集合。 |
|
表示單個正則表達式匹配的結果。 |
|
表示經過以迭代方式將正則表達式模式應用於輸入字符串所找到的成功匹配的集合。 |
|
表示不可變的正則表達式。 |
應用實例:
Regex rx = new Regex(@"\b(?<word>\w+)\s+(\k<word>)\b",
RegexOptions.Compiled | RegexOptions.IgnoreCase);// Define a regular expression for repeated words.
string text = "The the quick brown fox fox jumped over the lazy dog dog.";// Define a test string.
MatchCollection matches = rx.Matches(text);// Find matches.
Console.WriteLine("{0} matches found in:\n {1}", matches.Count, text);// Report the number of matches found. foreach (Match match in matches)
{
GroupCollection groups = match.Groups;
Console.WriteLine("'{0}' repeated at positions {1} and {2}", groups["word"].Value, groups[0].Index,
groups[1].Index);
}
// Report on each match.
// The example produces the following output to the console:
// 3 matches found in:
// The the quick brown fox fox jumped over the lazy dog dog.
// 'The' repeated at positions 0 and 4
// 'fox' repeated at positions 20 and 25
// 'dog' repeated at positions 50 and 54
System.Data.SqlClient 命名空間
類 |
說明 |
使您能夠用其餘源的數據有效批量加載 SQL Server 表。 |
|
表示要對 SQL Server 數據庫執行的一個 Transact-SQL 語句或存儲過程。 |
|
用於將對 DataSet 所作的更改與關聯的 SQL Server 數據庫的更改相協調。 |
|
表示 SQL Server 數據庫的一個打開的鏈接。沒法繼承此類。 |
|
爲建立和管理由 SqlConnection 類使用的鏈接字符串的內容提供了一種簡單方法。 |
|
表示用於填充 DataSet 和更新 SQL Server 數據庫的一組數據命令和一個數據庫鏈接。 |
|
提供一種從 SQL Server 數據庫讀取行的只進流的方式。 |
|
收集與 SQL Server 返回的警告或錯誤有關的信息。 |
|
收集 SQL Server .NET Framework 數據提供程序生成的全部錯誤。 |
|
當 SQL Server 返回警告或錯誤時引起的異常。沒法繼承此類。 |
|
表示 SqlCommand 的參數,也能夠是它到 DataSet 列的映射。 |
|
表示要在 SQL Server 數據庫中處理的 Transact-SQL 事務。 |
System.Data命名空間
類 |
說明 |
表示可在一個或多個 DataColumn 對象上強制的約束。 |
|
表示 DataTable 的約束的集合。 |
|
表示 DataTable 中列的架構。 |
|
表示 DataTable 的 DataColumn 對象的集合。 |
|
表示使用 ADO.NET 組件發生錯誤時引起的異常。 |
|
表示兩個 DataTable 對象之間的父/子關係。 |
|
表示此 DataSet 的 DataRelation 對象的集合。 |
|
表示 DataTable 中的一行數據。 |
|
表示 DataTable 的行的集合。 |
|
表示 DataRow 的自定義視圖。 |
|
表示數據在內存中的緩存。 |
|
表示內存中數據的一個表。 |
|
表示 DataSet 的表的集合。 |
|
DataTableReader 以一個或多個只讀、只進結果集的形式獲取一個或多個 DataTable 對象的內容。 |
|
表示用於排序、篩選、搜索、編輯和導航的 DataTable 的可綁定數據的自定義視圖。 |
完整實例:
string sqlConnectionCommand = "Data Source=aa;Initial Catalog=bb;User ID=cc;Pwd=dd";
string dataTableName = "Basic_Keyword_Test";
string sqlSelectCommand = "Select KeywordID, KeywordName From Basic_Keyword_Test";
SqlConnection sqlConnection = new SqlConnection(sqlConnectionCommand);
SqlCommand sqlCommand = new SqlCommand();
sqlCommand.CommandType = System.Data.CommandType.Text;
sqlCommand.Connection = sqlConnection;
sqlCommand.CommandText = sqlSelectCommand;
sqlConnection.Open();
SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();
sqlDataAdapter.SelectCommand = sqlCommand;
DataSet dataSet = new DataSet();
SqlCommandBuilder sqlCommandBuilder = new SqlCommandBuilder(sqlDataAdapter);
sqlDataAdapter.Fill(dataSet, dataTableName);
DataRow row = dataSet.Tables[0].NewRow();
row[0] = 10000;
row[1] = "new row";
dataSet.Tables[0].Rows.Add(row);
sqlDataAdapter.Update(dataSet, dataTableName);
sqlCommand.Dispose();
sqlDataAdapter.Dispose();
sqlConnection.Close();
System.Xml 命名空間
System.Xml 命名空間爲處理 XML 提供基於標準的支持。主要成員有以下:
類 |
說明 |
表示一個屬性。此屬性的有效值和默認值在文檔類型定義 (DTD) 或架構中進行定義。 |
|
表示能夠按名稱或索引訪問的屬性的集合。 |
|
容許經過相關的 DataSet 存儲、檢索和操做結構化數據。 |
|
表示 XML 聲明節點:<?xml version='1.0'...?>。 |
|
表示 XML 文檔。 |
|
表示對樹插入操做有用的輕量對象。 |
|
表示文檔類型聲明。 |
|
表示一個元素。 |
|
返回有關最後一個異常的詳細信息。 |
|
表示 XML 文檔中的單個節點。 |
|
表示提供對 XmlNode 中的 XML 數據進行快速、非緩存的只進訪問的讀取器。 |
|
表示提供對 XML 數據進行快速、非緩存、只進訪問的讀取器。 |
|
指定在 Create 方法建立的 XmlReader 對象上支持的一組功能。 |
|
表示元素或屬性的文本內容。 |
|
表示提供對 XML 數據進行快速、非緩存、只進訪問的讀取器。 |
|
表示提供快速、非緩存、只進方法的編寫器,該方法生成包含 XML 數據(這些數據符合 W3C 可擴展標記語言 (XML) 1.0 和「XML 中的命名空間」建議)的流或文件。 |
|
表示一個編寫器,該編寫器提供一種快速、非緩存和只進的方式來生成包含 XML 數據的流或文件。 |
|
指定在由 System.Xml.XmlWriter.Create 方法建立的 XmlWriter 對象上支持的一組功能。 |
完整實例:
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load("bookstore.xml");
XmlNode root=xmlDoc.SelectSingleNode("bookstore");
XmlElement xe1=xmlDoc.CreateElement("book");
xe1.SetAttribute("genre","李贊紅");
xe1.SetAttribute("ISBN","2-3631-4");
XmlElement xesub1=xmlDoc.CreateElement("title");
xesub1.InnerText="CS從入門到精通";
xe1.AppendChild(xesub1);
XmlElement xesub2=xmlDoc.CreateElement("author");
xesub2.InnerText="候捷";
xe1.AppendChild(xesub2);
root.AppendChild(xe1);
xmlDoc.Save("bookstore.xml");
System.IO 命名空間
System.IO 命名空間包含容許讀寫文件和數據流的類型以及提供基本文件和目錄支持的類型。主要成員有以下:
類 |
說明 |
用特定的編碼將基元數據類型讀做二進制值。 |
|
以二進制形式將基元類型寫入流,並支持用特定的編碼寫入字符串。 |
|
給另外一流上的讀寫操做添加一個緩衝層。 |
|
公開用於建立、移動和枚舉經過目錄和子目錄的靜態方法。 |
|
公開用於建立、移動和枚舉目錄和子目錄的實例方法。 |
|
提供對有關驅動器的信息的訪問。 |
|
提供用於建立、複製、刪除、移動和打開文件的靜態方法,並協助建立 FileStream 對象。 |
|
提供建立、複製、刪除、移動和打開文件的實例方法,而且幫助建立 FileStream 對象。沒法繼承此類。 |
|
公開以文件爲主的 Stream,既支持同步讀寫操做,也支持異步讀寫操做。 |
|
發生 I/O 錯誤時引起的異常。 |
|
建立其支持存儲區爲內存的流。 |
|
對包含文件或目錄路徑信息的 String 實例執行操做。這些操做是以跨平臺的方式執行的。 |
|
實現一個 TextReader,使其以一種特定的編碼從字節流中讀取字符。 |
|
實現一個 TextWriter,使其以一種特定的編碼向流中寫入字符。 |
|
實現從字符串進行讀取的 TextReader。 |
|
實現一個用於將信息寫入字符串的 TextWriter。該信息存儲在基礎 StringBuilder 中。 |
|
表示可讀取連續字符系列的讀取器。 |
|
表示能夠編寫一個有序字符系列的編寫器。該類爲抽象類。 |
完整實例:
string path = @"c:\temp\MyTest.txt";
if (!File.Exists(path)) {// Create a file to write to.
using (StreamWriter sw = File.CreateText(path)) {
sw.WriteLine("Hello");
sw.WriteLine("And");
sw.WriteLine("Welcome");
}
}
// Open the file to read from.
using (StreamReader sr = File.OpenText(path)) {
string s = "";
while ((s = sr.ReadLine()) != null) {
Console.WriteLine(s);
}
}