XmlReader.Create 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
建立新的 XmlReader 實例。
多載
| 名稱 | Description |
|---|---|
| Create(String, XmlReaderSettings, XmlParserContext) |
利用指定的 URI、設定和上下文資訊來建立一個新 XmlReader 實例進行解析。 |
| Create(TextReader, XmlReaderSettings, XmlParserContext) |
利用指定的文字閱讀器、設定和上下文資訊來建立一個新的 XmlReader 實例進行解析。 |
| Create(Stream, XmlReaderSettings, XmlParserContext) |
利用指定的串流、設定和上下文資訊建立一個新 XmlReader 實例進行解析。 |
| Create(Stream, XmlReaderSettings, String) |
使用指定的串流、基礎 URI 和設定建立一個新 XmlReader 實例。 |
| Create(XmlReader, XmlReaderSettings) |
透過指定的 XML 讀取器與設定建立新 XmlReader 實例。 |
| Create(TextReader, XmlReaderSettings, String) |
透過指定的文字閱讀器、設定和基礎 URI 建立一個新 XmlReader 實例。 |
| Create(TextReader, XmlReaderSettings) |
使用指定的文字閱讀器和設定建立一個新 XmlReader 實例。 |
| Create(Stream, XmlReaderSettings) |
建立 XmlReader 一個新的實例,並使用指定的串流和設定。 |
| Create(String) |
建立 XmlReader 一個帶有指定 URI 的新實例。 |
| Create(TextReader) |
使用指定的文字閱讀器建立新 XmlReader 實例。 |
| Create(Stream) |
用指定的串流以預設設定建立一個新 XmlReader 實例。 |
| Create(String, XmlReaderSettings) |
使用指定的 URI 和設定建立一個新 XmlReader 實例。 |
備註
欲了解更多關於此 API 的資訊,請參閱 XmlReader.Close 的補充 API 備註。
Create(String, XmlReaderSettings, XmlParserContext)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
利用指定的 URI、設定和上下文資訊來建立一個新 XmlReader 實例進行解析。
public:
static System::Xml::XmlReader ^ Create(System::String ^ inputUri, System::Xml::XmlReaderSettings ^ settings, System::Xml::XmlParserContext ^ inputContext);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings? settings, System.Xml.XmlParserContext? inputContext);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings settings, System.Xml.XmlParserContext inputContext);
static member Create : string * System.Xml.XmlReaderSettings * System.Xml.XmlParserContext -> System.Xml.XmlReader
Public Shared Function Create (inputUri As String, settings As XmlReaderSettings, inputContext As XmlParserContext) As XmlReader
參數
- inputUri
- String
包含 XML 資料的檔案 URI。
XmlResolver物件上的XmlReaderSettings物件用來將路徑轉換成標準資料表示。 若 XmlResolver 是 null,則使用一個新的 XmlUrlResolver 物件。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。 這個值可以是 null。
- inputContext
- XmlParserContext
解析 XML 片段所需的上下文資訊。 上下文資訊可能包括 XmlNameTable 使用、編碼、命名空間範圍、當前 xml:lang 與 xml:space 範圍、基礎 URI,以及文件類型定義。
這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
inputUri 值是 null。
該 XmlReader 系統沒有足夠的權限來存取 XML 資料的位置。
URI 指定的檔案無法找到。
URI 格式不正確。
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
這表示他們 XmlReader 可以存取任何不需要驗證的地點。 如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以透過設定XmlResolverXmlSecureResolver物件屬性來限制他們XmlReader能存取的資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(TextReader, XmlReaderSettings, XmlParserContext)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
利用指定的文字閱讀器、設定和上下文資訊來建立一個新的 XmlReader 實例進行解析。
public:
static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input, System::Xml::XmlReaderSettings ^ settings, System::Xml::XmlParserContext ^ inputContext);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings settings, System.Xml.XmlParserContext inputContext);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings? settings, System.Xml.XmlParserContext? inputContext);
static member Create : System.IO.TextReader * System.Xml.XmlReaderSettings * System.Xml.XmlParserContext -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader, settings As XmlReaderSettings, inputContext As XmlParserContext) As XmlReader
參數
- input
- TextReader
文字閱讀器,用以讀取 XML 資料。 文字讀取器回傳一串 Unicode 字元,因此 XML 宣告中指定的編碼不會被 XML 讀取器用來解碼資料串流。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。 這個值可以是 null。
- inputContext
- XmlParserContext
解析 XML 片段所需的上下文資訊。 上下文資訊可能包括 XmlNameTable 使用、編碼、命名空間範圍、當前 xml:lang 與 xml:space 範圍、基礎 URI,以及文件類型定義。
這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
範例
以下範例建立 XmlReader 一個讀取 XML 片段的物件。
string xmlFrag ="<item rk:ID='abc-23'>hammer</item> " +
"<item rk:ID='r2-435'>paint</item>" +
"<item rk:ID='abc-39'>saw</item>";
// Create the XmlNamespaceManager.
NameTable nt = new NameTable();
XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
nsmgr.AddNamespace("rk", "urn:store-items");
// Create the XmlParserContext.
XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);
// Create the reader.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ConformanceLevel = ConformanceLevel.Fragment;
XmlReader reader = XmlReader.Create(new StringReader(xmlFrag), settings, context);
Dim xmlFrag As String = "<item rk:ID='abc-23'>hammer</item> " & _
"<item rk:ID='r2-435'>paint</item>" & _
"<item rk:ID='abc-39'>saw</item>"
' Create the XmlNamespaceManager.
Dim nt As New NameTable()
Dim nsmgr As New XmlNamespaceManager(nt)
nsmgr.AddNamespace("rk", "urn:store-items")
' Create the XmlParserContext.
Dim context As New XmlParserContext(Nothing, nsmgr, Nothing, XmlSpace.None)
' Create the reader.
Dim settings As New XmlReaderSettings()
settings.ConformanceLevel = ConformanceLevel.Fragment
Dim reader As XmlReader = XmlReader.Create(New StringReader(xmlFrag), settings, context)
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以使用以下方法之一來控制他們 XmlReader 能存取哪些資源:
- 將 XmlReader 屬性設定為 XmlResolver 物件,以限制 XmlSecureResolver 可以存取的資源。
-或-
- 不允許 XmlReader 藉由將 XmlResolver 屬性設定為
null來開啟任何外部資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(Stream, XmlReaderSettings, XmlParserContext)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
利用指定的串流、設定和上下文資訊建立一個新 XmlReader 實例進行解析。
public:
static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input, System::Xml::XmlReaderSettings ^ settings, System::Xml::XmlParserContext ^ inputContext);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings settings, System.Xml.XmlParserContext inputContext);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings? settings, System.Xml.XmlParserContext? inputContext);
static member Create : System.IO.Stream * System.Xml.XmlReaderSettings * System.Xml.XmlParserContext -> System.Xml.XmlReader
Public Shared Function Create (input As Stream, settings As XmlReaderSettings, inputContext As XmlParserContext) As XmlReader
參數
- input
- Stream
包含 XML 資料的串流。
它 XmlReader 會掃描串流的前幾個位元組,尋找位元組順序標記或其他編碼符號。 當編碼確定後,編碼會用來繼續讀取串流,處理則繼續以(Unicode)字元的串流方式解析輸入。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。 這個值可以是 null。
- inputContext
- XmlParserContext
解析 XML 片段所需的上下文資訊。 上下文資訊可能包括 XmlNameTable 使用、編碼、命名空間範圍、當前 xml:lang 與 xml:space 範圍、基礎 URI,以及文件類型定義。
這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以使用以下方法之一來控制他們 XmlReader 能存取哪些資源:
- 將 XmlReader 屬性設定為 XmlResolver 物件,以限制 XmlSecureResolver 可以存取的資源。
-或-
- 不允許 XmlReader 藉由將 XmlResolver 屬性設定為
null來開啟任何外部資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(Stream, XmlReaderSettings, String)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
使用指定的串流、基礎 URI 和設定建立一個新 XmlReader 實例。
public:
static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input, System::Xml::XmlReaderSettings ^ settings, System::String ^ baseUri);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings? settings, string? baseUri);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings settings, string baseUri);
static member Create : System.IO.Stream * System.Xml.XmlReaderSettings * string -> System.Xml.XmlReader
Public Shared Function Create (input As Stream, settings As XmlReaderSettings, baseUri As String) As XmlReader
參數
- input
- Stream
包含 XML 資料的串流。
它 XmlReader 會掃描串流的前幾個位元組,尋找位元組順序標記或其他編碼符號。 當編碼確定後,編碼會用來繼續讀取串流,處理則繼續以(Unicode)字元的串流方式解析輸入。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。 這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以使用以下方法之一來控制他們 XmlReader 能存取哪些資源:
- 將 XmlReader 屬性設定為 XmlResolver 物件,以限制 XmlSecureResolver 可以存取的資源。
-或-
- 不允許 XmlReader 藉由將 XmlResolver 屬性設定為
null來開啟任何外部資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(XmlReader, XmlReaderSettings)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
透過指定的 XML 讀取器與設定建立新 XmlReader 實例。
public:
static System::Xml::XmlReader ^ Create(System::Xml::XmlReader ^ reader, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(System.Xml.XmlReader reader, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(System.Xml.XmlReader reader, System.Xml.XmlReaderSettings? settings);
static member Create : System.Xml.XmlReader * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (reader As XmlReader, settings As XmlReaderSettings) As XmlReader
參數
- reader
- XmlReader
你想用作底層 XML 讀取器的物件。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。
物件的 XmlReaderSettings 一致性等級必須與底層讀取器的一致性等級相匹配,或必須設定為 Auto。
傳回
一個包裹在指定 XmlReader 物件上的物件。
例外狀況
reader 值是 null。
若 XmlReaderSettings 物件指定與底層讀取器的符合等級不一致,
-或-
範例
以下範例建立一個包裹在物件XmlNodeReader周圍的驗證XmlReader物件。
// Create the XmlNodeReader object.
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
XmlNodeReader nodeReader = new XmlNodeReader(doc);
// Set the validation settings.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.Schema;
settings.Schemas.Add("urn:bookstore-schema", "books.xsd");
settings.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);
// Create a validating reader that wraps the XmlNodeReader object.
XmlReader reader = XmlReader.Create(nodeReader, settings);
// Parse the XML file.
while (reader.Read());
' Create the XmlNodeReader object.
Dim doc As New XmlDocument()
doc.Load("books.xml")
Dim nodeReader As New XmlNodeReader(doc)
' Set the validation settings.
Dim settings As New XmlReaderSettings()
settings.ValidationType = ValidationType.Schema
settings.Schemas.Add("urn:bookstore-schema", "books.xsd")
AddHandler settings.ValidationEventHandler, AddressOf ValidationCallBack
' Create a validating reader that wraps the XmlNodeReader object.
Dim reader As XmlReader = XmlReader.Create(nodeReader, settings)
' Parse the XML file.
While reader.Read()
End While
備註
此方法允許你為底層 XmlReader 物件添加額外功能。 底層XmlReader物件可以是方法所建立Create的另一個XmlReader物件,或XmlReader是使用具體XmlReader實作所建立的物件。
預設且 XmlUrlResolver 無憑證時會用來存取任何外部資源,例如架構。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請利用該XmlReaderSettings.XmlResolver屬性指定XmlResolver一個具備必要憑證的 。
這很重要
你可以使用以下方法之一來控制他們 XmlReader 能存取哪些資源:
- 將 XmlReader 屬性設定為 XmlResolver 物件,以限制 XmlSecureResolver 可以存取的資源。
-或-
- 不允許 XmlReader 藉由將 XmlResolver 屬性設定為
null來開啟任何外部資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(TextReader, XmlReaderSettings, String)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
透過指定的文字閱讀器、設定和基礎 URI 建立一個新 XmlReader 實例。
public:
static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input, System::Xml::XmlReaderSettings ^ settings, System::String ^ baseUri);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings? settings, string? baseUri);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings settings, string baseUri);
static member Create : System.IO.TextReader * System.Xml.XmlReaderSettings * string -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader, settings As XmlReaderSettings, baseUri As String) As XmlReader
參數
- input
- TextReader
文字閱讀器,用以讀取 XML 資料。 文字閱讀器回傳一串 Unicode 字元,因此 XML XmlReader 宣告中指定的編碼不會被用來解碼資料流。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。 這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以使用以下方法之一來控制他們 XmlReader 能存取哪些資源:
- 將 XmlReader 屬性設定為 XmlResolver 物件,以限制 XmlSecureResolver 可以存取的資源。
-或-
- 不允許 XmlReader 藉由將 XmlResolver 屬性設定為
null來開啟任何外部資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(TextReader, XmlReaderSettings)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
使用指定的文字閱讀器和設定建立一個新 XmlReader 實例。
public:
static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings? settings);
static member Create : System.IO.TextReader * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader, settings As XmlReaderSettings) As XmlReader
參數
- input
- TextReader
文字閱讀器,用以讀取 XML 資料。 文字讀取器回傳一串 Unicode 字元,因此 XML 宣告中指定的編碼不會被 XML 讀取器用來解碼資料串流。
- settings
- XmlReaderSettings
新 XmlReader. 這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以使用以下方法之一來控制他們 XmlReader 能存取哪些資源:
- 將 XmlReader 屬性設定為 XmlResolver 物件,以限制 XmlSecureResolver 可以存取的資源。
-或-
- 不允許 XmlReader 藉由將 XmlResolver 屬性設定為
null來開啟任何外部資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(Stream, XmlReaderSettings)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
建立 XmlReader 一個新的實例,並使用指定的串流和設定。
public:
static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings? settings);
static member Create : System.IO.Stream * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (input As Stream, settings As XmlReaderSettings) As XmlReader
參數
- input
- Stream
包含 XML 資料的串流。
它 XmlReader 會掃描串流的前幾個位元組,尋找位元組順序標記或其他編碼符號。 當編碼確定後,編碼會用來繼續讀取串流,處理則繼續以(Unicode)字元的串流方式解析輸入。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。 這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以使用以下方法之一來控制他們 XmlReader 能存取哪些資源:
- 將 XmlReader 屬性設定為 XmlResolver 物件,以限制 XmlSecureResolver 可以存取的資源。
-或-
- 不允許 XmlReader 藉由將 XmlResolver 屬性設定為
null來開啟任何外部資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(String)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
建立 XmlReader 一個帶有指定 URI 的新實例。
public:
static System::Xml::XmlReader ^ Create(System::String ^ inputUri);
public static System.Xml.XmlReader Create(string inputUri);
static member Create : string -> System.Xml.XmlReader
Public Shared Function Create (inputUri As String) As XmlReader
參數
- inputUri
- String
包含 XML 資料的檔案 URI。 這個 XmlUrlResolver 類別用來將路徑轉換成典型的資料表示。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
inputUri 值是 null。
該 XmlReader 系統沒有足夠的權限來存取 XML 資料的位置。
URI 所識別的檔案不存在。
URI 格式不正確。
注意:在 .NET for Windows Store 應用程式 或 Portable 類別函式庫中,請擷取基底類別例外, FormatException為 。
範例
以下範例建立 XmlReader 一個物件,讀取由 URI 指定的 XML 資料檔案。
// Create the XmlReader object.
XmlReader reader = XmlReader.Create("books.xml");
' Create the XmlReader object.
Dim reader As XmlReader = XmlReader.Create("books.xml")
備註
XmlReaderSettings使用預設設定的物件來建立讀取器。 如果你想指定在建立的讀取器上支援的功能,請使用將物件 XmlReaderSettings 作為參數之一的過載,並傳入 XmlReaderSettings 一個設定正確的物件。
預設無 XmlUrlResolver 憑證時會用於存取任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請利用該XmlReaderSettings.XmlResolver屬性指定XmlResolver一個具備必要憑證的 。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(TextReader)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
使用指定的文字閱讀器建立新 XmlReader 實例。
public:
static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input);
public static System.Xml.XmlReader Create(System.IO.TextReader input);
static member Create : System.IO.TextReader -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader) As XmlReader
參數
- input
- TextReader
文字閱讀器,用以讀取 XML 資料。 文字閱讀器回傳一串 Unicode 字元,因此 XML 宣告中指定的編碼不會被 XML 讀取器用來解碼資料流。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
範例
以下範例使用 該 StringReader 類別來讀取 XML 字串。
string xmlData ="<item productID='124390'>" +
"<price>5.95</price>" +
"</item>";
// Create the XmlReader object.
XmlReader reader = XmlReader.Create(new StringReader(xmlData));
Dim xmlData As String = "<item productID='124390'>" & _
"<price>5.95</price>" & _
"</item>"
' Create the XmlReader object.
Dim reader As XmlReader = XmlReader.Create(New StringReader(xmlData))
備註
XmlReaderSettings使用預設設定的物件來建立讀取器。 如果你想指定在建立的讀取器上支援的功能,請使用將物件 XmlReaderSettings 作為參數之一的過載,並傳入 XmlReaderSettings 一個設定正確的物件。
預設無 XmlUrlResolver 憑證時會用於存取任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請利用該XmlReaderSettings.XmlResolver屬性指定XmlResolver一個具備必要憑證的 。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(Stream)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
用指定的串流以預設設定建立一個新 XmlReader 實例。
public:
static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input);
public static System.Xml.XmlReader Create(System.IO.Stream input);
static member Create : System.IO.Stream -> System.Xml.XmlReader
Public Shared Function Create (input As Stream) As XmlReader
參數
- input
- Stream
包含 XML 資料的串流。
它 XmlReader 會掃描串流的前幾個位元組,尋找位元組順序標記或其他編碼符號。 當編碼確定後,編碼會用來繼續讀取串流,處理則繼續以(Unicode)字元的串流方式解析輸入。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
input 值是 null。
該 XmlReader 系統沒有足夠的權限來存取 XML 資料的位置。
範例
以下範例建立一個 XmlReader 物件,讀取 FileStream。
FileStream fs = new FileStream(@"C:\data\books.xml", FileMode.OpenOrCreate,
FileAccess.Read, FileShare.Read);
// Create the XmlReader object.
XmlReader reader = XmlReader.Create(fs);
Dim fs As New FileStream("C:\data\books.xml", FileMode.OpenOrCreate, FileAccess.Read, FileShare.Read)
' Create the XmlReader object.
Dim reader As XmlReader = XmlReader.Create(fs)
End Sub
備註
XmlReaderSettings使用預設設定的物件來建立讀取器。 如果你想指定在建立的讀取器上支援的功能,請使用將物件 XmlReaderSettings 作為參數之一的過載,並傳入 XmlReaderSettings 一個設定正確的物件。
預設無 XmlUrlResolver 憑證時會用於存取任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
如果外部資源位於需要認證的網路資源上,請利用該XmlReaderSettings.XmlResolver屬性指定XmlResolver一個具備必要憑證的 。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。
適用於
Create(String, XmlReaderSettings)
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
- 來源:
- XmlReader.cs
使用指定的 URI 和設定建立一個新 XmlReader 實例。
public:
static System::Xml::XmlReader ^ Create(System::String ^ inputUri, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings? settings);
static member Create : string * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (inputUri As String, settings As XmlReaderSettings) As XmlReader
參數
- inputUri
- String
包含 XML 資料的檔案 URI。
XmlResolver物件上的XmlReaderSettings物件用來將路徑轉換成標準資料表示。 若 XmlResolver 是 null,則使用一個新的 XmlUrlResolver 物件。
- settings
- XmlReaderSettings
新實例的設定 XmlReader 。 這個值可以是 null。
傳回
一個用來讀取串流中 XML 資料的物件。
例外狀況
inputUri 值是 null。
URI 指定的檔案無法找到。
URI 格式不正確。
注意:在 .NET for Windows Store 應用程式 或 Portable 類別函式庫中,請擷取基底類別例外, FormatException為 。
範例
以下範例建立 XmlReader 一個支援文件類型定義(DTD)驗證的物件。
// Set the validation settings.
XmlReaderSettings settings = new XmlReaderSettings();
settings.DtdProcessing = DtdProcessing.Parse;
settings.ValidationType = ValidationType.DTD;
settings.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);
// Create the XmlReader object.
XmlReader reader = XmlReader.Create("itemDTD.xml", settings);
// Parse the file.
while (reader.Read()) {}
' Set the validation settings.
Dim settings As New XmlReaderSettings()
settings.DtdProcessing = DtdProcessing.Parse
settings.ValidationType = ValidationType.DTD
AddHandler settings.ValidationEventHandler, AddressOf ValidationCallBack
' Create the XmlReader object.
Dim reader As XmlReader = XmlReader.Create("itemDTD.xml", settings)
' Parse the file.
While reader.Read()
End While
備註
預設情況下,使用無憑證的 存取 XmlUrlResolver 任何外部資源,例如文件類型定義(DTD)、實體、結構等。
這很重要
從 .NET Framework 4.5.2 開始,不再提供預設 XmlUrlResolver 設定。 如果你的解決方案目標是 .NET Framework 4.5.2 或更新版本,請指定 使用 XmlResolver 這個 XmlReaderSettings.XmlResolver 屬性。
這表示他們 XmlReader 可以存取任何不需要驗證的地點。 如果外部資源位於需要認證的網路資源上,請使用 XmlReaderSettings.XmlResolver 屬性指定 a XmlResolver 並具備必要的憑證。
這很重要
你可以透過設定XmlResolverXmlSecureResolver物件屬性來限制他們XmlReader能存取的資源。
所建立 XmlReader 的物件會擴展實體參考,並對新行字元進行 XML 正規化。