XmlReader.Create 메서드

정의

XmlReader 인스턴스를 만듭니다.

오버로드

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)

지정된 URI를 사용하여 새 XmlReader 인스턴스를 만듭니다.

Create(TextReader)

지정된 텍스트 판독기를 사용하여 새 XmlReader 인스턴스를 만듭니다.

Create(Stream)

기본 설정의 지정된 스트림을 사용하여 새 XmlReader 인스턴스를 만듭니다.

Create(String, XmlReaderSettings)

지정된 URI 및 설정을 사용하여 새 XmlReader 인스턴스를 만듭니다.

예제

이 예제에서는 사소한 공백을 제거하고, 주석을 제거하고, 조각 수준 규칙 검사를 수행하는 XML 판독기를 만듭니다.

XmlReaderSettings settings = new XmlReaderSettings();
settings.ConformanceLevel = ConformanceLevel.Fragment;
settings.IgnoreWhitespace = true;
settings.IgnoreComments = true;
XmlReader reader = XmlReader.Create("books.xml", settings);
Dim settings As New XmlReaderSettings()
settings.ConformanceLevel = ConformanceLevel.Fragment
settings.IgnoreWhitespace = true
settings.IgnoreComments = true
Dim reader As XmlReader = XmlReader.Create("books.xml", settings)

다음 예제에서는 기본 자격 증명을 XmlUrlResolver 사용하여 파일에 액세스합니다.

// Set the reader settings.
XmlReaderSettings^ settings = gcnew XmlReaderSettings;
settings->IgnoreComments = true;
settings->IgnoreProcessingInstructions = true;
settings->IgnoreWhitespace = true;
// Set the reader settings.
XmlReaderSettings settings = new XmlReaderSettings();
settings.IgnoreComments = true;
settings.IgnoreProcessingInstructions = true;
settings.IgnoreWhitespace = true;
' Set the reader settings.
Dim settings as XmlReaderSettings = new XmlReaderSettings()
settings.IgnoreComments = true
settings.IgnoreProcessingInstructions = true
settings.IgnoreWhitespace = true
// Create a resolver with default credentials.
XmlUrlResolver^ resolver = gcnew XmlUrlResolver;
resolver->Credentials = System::Net::CredentialCache::DefaultCredentials;

 // Set the reader settings object to use the resolver.
 settings->XmlResolver = resolver;

// Create the XmlReader object.
XmlReader^ reader = XmlReader::Create( L"http://ServerName/data/books.xml", settings );
// Create a resolver with default credentials.
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = System.Net.CredentialCache.DefaultCredentials;

// Set the reader settings object to use the resolver.
settings.XmlResolver = resolver;

// Create the XmlReader object.
XmlReader reader = XmlReader.Create("http://ServerName/data/books.xml", settings);
' Create a resolver with default credentials.
Dim resolver as XmlUrlResolver = new XmlUrlResolver()
resolver.Credentials = System.Net.CredentialCache.DefaultCredentials

' Set the reader settings object to use the resolver.
settings.XmlResolver = resolver

' Create the XmlReader object.
Dim reader as XmlReader = XmlReader.Create("http://ServerName/data/books.xml", settings)

다음 코드는 다른 판독기 내에서 판독기 인스턴스를 래핑합니다.

XmlTextReader txtReader = new XmlTextReader("bookOrder.xml");
XmlReaderSettings settings = new XmlReaderSettings();
settings.Schemas.Add("urn:po-schema", "PO.xsd");
settings.ValidationType = ValidationType.Schema;
XmlReader reader = XmlReader.Create(txtReader, settings);
Dim txtReader As XmlTextReader = New XmlTextReader("bookOrder.xml")
Dim settings As New XmlReaderSettings()
settings.Schemas.Add("urn:po-schema", "PO.xsd")
settings.ValidationType = ValidationType.Schema
Dim reader As XmlReader = XmlReader.Create(txtReader, settings)

다음은 판독기를 연결하여 DTD 및 XML 스키마 유효성 검사를 추가하는 예제입니다.

XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.DTD;
XmlReader inner = XmlReader.Create("book.xml", settings); // DTD Validation
settings.Schemas.Add("urn:book-schema", "book.xsd");
settings.ValidationType = ValidationType.Schema;
XmlReader outer = XmlReader.Create(inner, settings);  // XML Schema Validation
Dim settings As New XmlReaderSettings()
settings.ValidationType = ValidationType.DTD
Dim inner As XmlReader = XmlReader.Create("book.xml", settings) ' DTD Validation
settings.Schemas.Add("urn:book-schema", "book.xsd")
settings.ValidationType = ValidationType.Schema
Dim outer As XmlReader = XmlReader.Create(inner, settings)  ' XML Schema Validation

설명

Create 대부분의 오버로드는 개체를 settings 허용하는 매개 변수를 XmlReaderSettings 포함합니다. 이 개체를 사용하여 다음을 수행할 수 있습니다.

  • 개체에서 XmlReader 지원하려는 기능을 지정합니다.

  • 개체를 XmlReaderSettings 다시 사용하여 여러 판독기를 만듭니다. 동일한 설정을 사용하여 동일한 기능을 사용하여 여러 판독기를 만들 수 있습니다. 또는 인스턴스의 설정을 XmlReaderSettings 수정하고 다른 기능 집합을 사용하여 새 판독기를 만들 수 있습니다.

  • 기존 XML 판독기 기능을 추가합니다. 메서드는 Create 다른 XmlReader 개체를 허용할 수 있습니다. 기본 XmlReader 개체는 사용자 정의 판독기, XmlTextReader 개체 또는 추가 기능을 추가하려는 다른 XmlReader 인스턴스일 수 있습니다.

  • 정적 Create 메서드에서 만든 개체에서만 XmlReader 사용할 수 있는 더 나은 규칙 검사 및 XML 1.0(네 번째 버전) 권장 사항 준수와 같은 기능을 최대한 활용합니다.

참고

.NET Framework 클래스와 같은 XmlTextReaderXmlNodeReader클래스의 XmlReader 구체적인 구현을 포함하지만 XmlValidatingReader 메서드를 사용하여 Create 인스턴스를 만드는 XmlReader 것이 좋습니다.

기본 설정

개체를 Create 허용하지 않는 오버로드를 XmlReaderSettings 사용하는 경우 다음 기본 판독기 설정이 사용됩니다.

설정 기본값
CheckCharacters true
ConformanceLevel ConformanceLevel.Document
IgnoreComments false
IgnoreProcessingInstructions false
IgnoreWhitespace false
LineNumberOffset 0
LinePositionOffset 0
NameTable null
DtdProcessing Prohibit
Schemas XmlSchemaSet 개체
ValidationFlags ProcessIdentityConstraints 사용
ValidationType None
XmlResolver XmlUrlResolver 개체입니다. .NET Framework 4.5.2부터 이 설정의 null기본값은 .입니다.

일반적인 시나리오에 대한 설정

다음은 XmlReaderSettings 일반적인 XML 판독기 시나리오 중 일부에 대해 설정해야 하는 속성입니다.

요구 사항 설정
데이터는 올바른 형식의 XML 문서여야 합니다. ConformanceLevelDocument로 변경되었습니다.
데이터는 올바른 형식의 XML 구문 분석 엔터티여야 합니다. ConformanceLevelFragment로 변경되었습니다.
DTD에 대해 데이터의 유효성을 검사해야 합니다. DtdProcessing - Parse
ValidationTypeDTD로 변경되었습니다.
XML 스키마에 대해 데이터의 유효성을 검사해야 합니다. ValidationType - Schema
SchemasXmlSchemaSet 유효성 검사에 사용할 대상 XmlReader XDR(XML-Data 축소) 스키마 유효성 검사를 지원하지 않습니다.
인라인 XML 스키마에 대해 데이터의 유효성을 검사해야 합니다. ValidationType - Schema
ValidationFlagsProcessInlineSchema로 변경되었습니다.
형식 지원. ValidationType - Schema
SchemasXmlSchemaSet 사용합니다.

XmlReader 에서는 XDR(XML-Data 축소) 스키마 유효성 검사를 지원하지 않습니다.

비동기 프로그래밍

동기 모드에서 메서드는 Create 파일, 스트림 또는 텍스트 판독기의 버퍼에서 데이터의 첫 번째 청크를 읽습니다. I/O 작업이 실패할 경우 예외가 발생할 수 있습니다. 비동기 모드에서 첫 번째 I/O 작업은 읽기 작업으로 발생하므로 읽기 작업이 발생할 때 발생하는 예외가 throw됩니다.

보안 고려 사항

기본적으로 XmlReader 사용자 자격 증명이 없는 개체를 XmlUrlResolver 사용하여 리소스를 엽니다. 즉, 기본적으로 XML 판독기는 자격 증명이 필요하지 않은 모든 위치에 액세스할 수 있습니다. XmlResolver 이 속성을 사용하여 리소스에 대한 액세스를 제어합니다.

또는

  • XML 판독기 null 에서 외부 리소스를 열지 못하도록 설정 XmlResolver 됩니다.

Create(String, XmlReaderSettings, XmlParserContext)

지정된 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입니다. XmlReaderSettings 개체의 XmlResolver 개체는 경로를 정규 데이터 표현으로 변환하는 데 사용됩니다. XmlResolvernull이면 새 XmlUrlResolver 개체가 사용됩니다.

settings
XmlReaderSettings

XmlReader 인스턴스의 설정입니다. 이 값은 null일 수 있습니다.

inputContext
XmlParserContext

XML 조각을 구문 분석하는 데 필요한 컨텍스트 정보입니다. 컨텍스트 정보에는 사용할 XmlNameTable, 인코딩, 네임스페이스 범위, 현재 xml:langxml:space 범위, 기본 URI 및 문서 종류 정의가 포함될 수 있습니다.

이 값은 null일 수 있습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

inputUri 값이 null입니다.

XmlReader에는 XML 데이터 위치에 액세스할 수 있는 충분한 권한이 없습니다.

NameTableNameTable 속성 둘 다에 값이 포함되어 있습니다. NameTable 속성 중 하나만 설정 및 사용할 수 있습니다.

URI로 지정된 파일을 찾을 수 없습니다.

URI 형식이 잘못되었습니다.

설명

기본적으로 XmlUrlResolver DTD(문서 형식 정의), 엔터티, 스키마 등과 같은 외부 리소스에 액세스하는 데는 자격 증명이 없는 항목이 사용됩니다.

중요

.NET Framework 4.5.2부터는 기본값 XmlUrlResolver 이 제공되지 않습니다. 솔루션이 .NET Framework 4.5.2 이상 버전을 대상으로 하는 경우 using 속성을 지정 XmlResolver XmlReaderSettings.XmlResolver 합니다.

즉, 인증이 XmlReader 필요하지 않은 모든 위치에 액세스할 수 있습니다. 외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

속성을 개체로 설정하여 액세스할 수 있는 XmlReader 리소스를 XmlResolver 제한할 XmlSecureResolver 수 있습니다.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(TextReader, XmlReaderSettings, XmlParserContext)

지정된 텍스트 판독기, 설정 및 컨텍스트 정보를 구문 분석에 사용하여 새 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 데이터를 읽어올 텍스트 판독기입니다. 텍스트 판독기는 유니코드 문자 스트림을 반환하므로 XML 선언에 지정된 인코딩은 XML 판독기가 데이터 스트림을 디코딩하는 데 사용되지 않습니다.

settings
XmlReaderSettings

XmlReader 인스턴스의 설정입니다. 이 값은 null일 수 있습니다.

inputContext
XmlParserContext

XML 조각을 구문 분석하는 데 필요한 컨텍스트 정보입니다. 컨텍스트 정보에는 사용할 XmlNameTable, 인코딩, 네임스페이스 범위, 현재 xml:langxml:space 범위, 기본 URI 및 문서 종류 정의가 포함될 수 있습니다.

이 값은 null일 수 있습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

input 값이 null입니다.

NameTableNameTable 속성 둘 다에 값이 포함되어 있습니다. (이러한 NameTable 속성 중 하나만 설정하고 사용할 수 있습니다.)

예제

다음 예제에서는 XML 조각을 읽는 개체를 만듭니다 XmlReader .

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 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

다음 방법 중 하나를 사용하여 액세스할 수 있는 리소스를 제어할 XmlReader 수 있습니다.

또는

  • XmlReader 속성을 XmlResolver로 설정하여 null가 모든 외부 리소스를 열 수 없도록 하십시오.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(Stream, XmlReaderSettings, XmlParserContext)

구문 분석을 위해 지정한 스트림, 설정 및 컨텍스트 정보를 사용하여 새 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는 스트림의 첫 번째 바이트를 검색하여 바이트 순서 표시나 다른 인코딩 기호를 찾습니다. 인코딩이 확인되면 이 인코딩을 사용하여 스트림을 읽고, 입력을 문자 스트림(유니코드)으로 구문 분석하는 작업이 수행됩니다.

settings
XmlReaderSettings

XmlReader 인스턴스의 설정입니다. 이 값은 null일 수 있습니다.

inputContext
XmlParserContext

XML 조각을 구문 분석하는 데 필요한 컨텍스트 정보입니다. 컨텍스트 정보에는 사용할 XmlNameTable, 인코딩, 네임스페이스 범위, 현재 xml:langxml:space 범위, 기본 URI 및 문서 종류 정의가 포함될 수 있습니다.

이 값은 null일 수 있습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

input 값이 null입니다.

설명

기본적으로 XmlUrlResolver 자격 증명이 없는 항목은 DTD(문서 형식 정의), 엔터티, 스키마 등과 같은 외부 리소스에 액세스하는 데 사용됩니다.

중요

.NET Framework 4.5.2부터는 기본값 XmlUrlResolver 이 제공되지 않습니다. 솔루션이 .NET Framework 4.5.2 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

다음 방법 중 하나를 사용하여 액세스할 수 있는 리소스를 제어할 XmlReader 수 있습니다.

또는

  • XmlReader 속성을 XmlResolver로 설정하여 null가 모든 외부 리소스를 열 수 없도록 하십시오.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(Stream, XmlReaderSettings, String)

지정된 스트림, 기본 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는 스트림의 첫 번째 바이트를 검색하여 바이트 순서 표시나 다른 인코딩 기호를 찾습니다. 인코딩이 확인되면 이 인코딩을 사용하여 스트림을 읽고, 입력을 문자 스트림(유니코드)으로 구문 분석하는 작업이 수행됩니다.

settings
XmlReaderSettings

XmlReader 인스턴스의 설정입니다. 이 값은 null일 수 있습니다.

baseUri
String

읽을 엔터티 또는 문서의 기본 URI입니다. 이 값은 null일 수 있습니다.

보안 정보 기본 URI는 XML 문서의 상대 URI를 확인하는 데 사용됩니다. 신뢰할 수 없는 소스의 기본 URI는 사용하지 않는 것이 좋습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

input 값이 null입니다.

설명

기본적으로 XmlUrlResolver 자격 증명이 없는 항목은 DTD(문서 형식 정의), 엔터티, 스키마 등과 같은 외부 리소스에 액세스하는 데 사용됩니다.

중요

.NET Framework 4.5.2부터는 기본값 XmlUrlResolver 이 제공되지 않습니다. 솔루션이 .NET Framework 4.5.2 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

다음 방법 중 하나를 사용하여 액세스할 수 있는 리소스를 제어할 XmlReader 수 있습니다.

또는

  • XmlReader 속성을 XmlResolver로 설정하여 null가 모든 외부 리소스를 열 수 없도록 하십시오.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(XmlReader, XmlReaderSettings)

지정된 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

지정된 XmlReader 개체를 래핑하는 개체입니다.

예외

reader 값이 null입니다.

XmlReaderSettings 개체가 기본 판독기의 규칙 수준과 일치하지 않는 규칙 수준을 지정하는 경우

또는

기본 XmlReaderError 또는 Closed 상태에 있는 경우

예제

다음 예제에서는 개체 주위에 래핑되는 유효성 XmlReader 검사 개체를 XmlNodeReader 만듭니다.

// 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 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 필요한 자격 증명을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

중요

다음 방법 중 하나를 사용하여 액세스할 수 있는 리소스를 제어할 XmlReader 수 있습니다.

또는

  • XmlReader 속성을 XmlResolver로 설정하여 null가 모든 외부 리소스를 열 수 없도록 하십시오.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(TextReader, XmlReaderSettings, String)

지정된 텍스트 판독기, 설정 및 기본 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 데이터를 읽어올 텍스트 판독기입니다. 텍스트 판독기는 유니코드 문자 스트림을 반환하므로 XML 선언에 지정된 인코딩은 XmlReader가 데이터 스트림을 디코딩하는 데 사용되지 않습니다.

settings
XmlReaderSettings

XmlReader 인스턴스의 설정입니다. 이 값은 null일 수 있습니다.

baseUri
String

읽을 엔터티 또는 문서의 기본 URI입니다. 이 값은 null일 수 있습니다.

보안 정보 기본 URI는 XML 문서의 상대 URI를 확인하는 데 사용됩니다. 신뢰할 수 없는 소스의 기본 URI는 사용하지 않는 것이 좋습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

input 값이 null입니다.

설명

기본적으로 XmlUrlResolver 자격 증명이 없는 항목은 DTD(문서 형식 정의), 엔터티, 스키마 등과 같은 외부 리소스에 액세스하는 데 사용됩니다.

중요

.NET Framework 4.5.2부터는 기본값 XmlUrlResolver 이 제공되지 않습니다. 솔루션이 .NET Framework 4.5.2 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

다음 방법 중 하나를 사용하여 액세스할 수 있는 리소스를 제어할 XmlReader 수 있습니다.

또는

  • XmlReader 속성을 XmlResolver로 설정하여 null가 모든 외부 리소스를 열 수 없도록 하십시오.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(TextReader, XmlReaderSettings)

지정된 텍스트 판독기 및 설정을 사용하여 새 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 데이터를 읽어올 텍스트 판독기입니다. 텍스트 판독기는 유니코드 문자 스트림을 반환하므로 XML 선언에 지정된 인코딩은 XML 판독기가 데이터 스트림을 디코딩하는 데 사용되지 않습니다.

settings
XmlReaderSettings

XmlReader의 설정입니다. 이 값은 null일 수 있습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

input 값이 null입니다.

설명

기본적으로 XmlUrlResolver 자격 증명이 없는 항목은 DTD(문서 형식 정의), 엔터티, 스키마 등과 같은 외부 리소스에 액세스하는 데 사용됩니다.

중요

.NET Framework 4.5.2부터는 기본값 XmlUrlResolver 이 제공되지 않습니다. 솔루션이 .NET Framework 4.5.2 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

다음 방법 중 하나를 사용하여 액세스할 수 있는 리소스를 제어할 XmlReader 수 있습니다.

또는

  • XmlReader 속성을 XmlResolver로 설정하여 null가 모든 외부 리소스를 열 수 없도록 하십시오.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(Stream, XmlReaderSettings)

지정된 스트림 및 설정을 사용하여 새 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는 스트림의 첫 번째 바이트를 검색하여 바이트 순서 표시나 다른 인코딩 기호를 찾습니다. 인코딩이 확인되면 이 인코딩을 사용하여 스트림을 읽고, 입력을 문자 스트림(유니코드)으로 구문 분석하는 작업이 수행됩니다.

settings
XmlReaderSettings

XmlReader 인스턴스의 설정입니다. 이 값은 null일 수 있습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

input 값이 null입니다.

설명

기본적으로 XmlUrlResolver 자격 증명이 없는 항목은 DTD(문서 형식 정의), 엔터티, 스키마 등과 같은 외부 리소스에 액세스하는 데 사용됩니다.

중요

.NET Framework 4.5.2부터는 기본값 XmlUrlResolver 이 제공되지 않습니다. 솔루션이 .NET Framework 4.5.2 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

다음 방법 중 하나를 사용하여 액세스할 수 있는 리소스를 제어할 XmlReader 수 있습니다.

또는

  • XmlReader 속성을 XmlResolver로 설정하여 null가 모든 외부 리소스를 열 수 없도록 하십시오.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(String)

지정된 URI를 사용하여 새 XmlReader 인스턴스를 만듭니다.

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 클래스는 경로를 정규 데이터 표현으로 변환하는 데 사용됩니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

inputUri 값이 null입니다.

XmlReader에는 XML 데이터 위치에 액세스할 수 있는 충분한 권한이 없습니다.

URI로 식별된 파일이 없는 경우

URI 형식이 잘못되었습니다.

참고: Windows 스토어 앱 또는 이식 가능한 클래스 라이브러리용 .NET에서 대신 기본 클래스 예외FormatException를 catch합니다.

예제

다음 예제에서는 URI로 XmlReader 지정된 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 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 필요한 자격 증명을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(TextReader)

지정된 텍스트 판독기를 사용하여 새 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 데이터를 읽어올 텍스트 판독기입니다. 텍스트 판독기는 유니코드 문자 스트림을 반환하므로 XML 선언에 지정된 인코딩은 XML 판독기가 데이터 스트림을 디코딩하는 데 사용되지 않습니다.

반환

XmlReader

스트림의 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 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 필요한 자격 증명을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(Stream)

기본 설정의 지정된 스트림을 사용하여 새 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는 스트림의 첫 번째 바이트를 검색하여 바이트 순서 표시나 다른 인코딩 기호를 찾습니다. 인코딩이 확인되면 이 인코딩을 사용하여 스트림을 읽고, 입력을 문자 스트림(유니코드)으로 구문 분석하는 작업이 수행됩니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

input 값이 null입니다.

XmlReader에는 XML 데이터 위치에 액세스할 수 있는 충분한 권한이 없습니다.

예제

다음 예제에서는 에서 읽는 개체를 FileStream만듭니다XmlReader.


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 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 필요한 자격 증명을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상

Create(String, XmlReaderSettings)

지정된 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입니다. XmlReaderSettings 개체의 XmlResolver 개체는 경로를 정규 데이터 표현으로 변환하는 데 사용됩니다. XmlResolvernull이면 새 XmlUrlResolver 개체가 사용됩니다.

settings
XmlReaderSettings

XmlReader 인스턴스의 설정입니다. 이 값은 null일 수 있습니다.

반환

XmlReader

스트림의 XML 데이터를 읽는 데 사용되는 개체입니다.

예외

inputUri 값이 null입니다.

URI로 지정된 파일을 찾을 수 없습니다.

URI 형식이 잘못되었습니다.

참고: Windows 스토어 앱 또는 이식 가능한 클래스 라이브러리용 .NET에서 대신 기본 클래스 예외FormatException를 catch합니다.

예제

다음 예제에서는 DTD(문서 형식 정의) 유효성 검사를 지원하는 개체를 만듭니다 XmlReader .

// 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 이상 버전을 대상으로 하는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 지정 XmlResolver 합니다.

즉, 인증이 XmlReader 필요하지 않은 모든 위치에 액세스할 수 있습니다. 외부 리소스가 인증이 필요한 네트워크 리소스에 있는 경우 속성을 사용하여 XmlReaderSettings.XmlResolver 필요한 자격 증명을 XmlResolver 사용하여 지정합니다.

중요

속성을 개체로 설정하여 액세스할 수 있는 XmlReader 리소스를 XmlResolver 제한할 XmlSecureResolver 수 있습니다.

만든 XmlReader 개체는 엔터티 참조를 확장하고 새 줄 문자의 XML 정규화를 수행합니다.

적용 대상