다음을 통해 공유


DataSet.WriteXml 메서드

정의

DataSet에서 XML 데이터를 쓰고 선택적으로 스키마를 씁니다.

오버로드

WriteXml(XmlWriter, XmlWriteMode)

지정된 DataSetXmlWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

WriteXml(String, XmlWriteMode)

지정된 DataSet를 사용하여 지정된 파일에 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

WriteXml(TextWriter, XmlWriteMode)

지정된 DataSetTextWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

WriteXml(Stream, XmlWriteMode)

지정된 DataSetStream를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

WriteXml(String)

지정된 파일에 DataSet의 현재 데이터를 씁니다.

WriteXml(TextWriter)

지정된 DataSet을 사용하여 TextWriter의 현재 데이터를 씁니다.

WriteXml(XmlWriter)

지정된 DataSetXmlWriter의 현재 데이터를 씁니다.

WriteXml(Stream)

지정된 DataSet을 사용하여 Stream의 현재 데이터를 씁니다.

WriteXml(XmlWriter, XmlWriteMode)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 DataSetXmlWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer, System::Data::XmlWriteMode mode);
public void WriteXml (System.Xml.XmlWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml (System.Xml.XmlWriter writer, System.Data.XmlWriteMode mode);
member this.WriteXml : System.Xml.XmlWriter * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (writer As XmlWriter, mode As XmlWriteMode)

매개 변수

writer
XmlWriter

쓰기에 사용할 XmlWriter입니다.

mode
XmlWriteMode

XmlWriteMode 값 중 하나입니다.

예제

다음 예제에서는 새 XmlTextWriterSystem.IO.FileStream 만드는 데 사용되는 개체를 만듭니다. XmlTextWriter 개체는 메서드와 함께 WriteXml XML 문서를 작성하는 데 사용됩니다.

private void WriteXmlToFile(DataSet thisDataSet)
{
    if (thisDataSet == null) { return; }

    // Create a file name to write to.
    string filename = "XmlDoc.xml";

    // Create the FileStream to write with.
    System.IO.FileStream stream = new System.IO.FileStream
        (filename, System.IO.FileMode.Create);

    // Create an XmlTextWriter with the fileStream.
    System.Xml.XmlTextWriter xmlWriter =
        new System.Xml.XmlTextWriter(stream,
        System.Text.Encoding.Unicode);

    // Write to the file with the WriteXml method.
    thisDataSet.WriteXml(xmlWriter);
    xmlWriter.Close();
}
Private Sub WriteXmlToFile(thisDataSet As DataSet)
    If thisDataSet Is Nothing Then
        Return
    End If

    ' Create a file name to write to.
    Dim filename As String = "XmlDoc.xml"

    ' Create the FileStream to write with.
    Dim stream As New System.IO.FileStream _
       (filename, System.IO.FileMode.Create)

    ' Create an XmlTextWriter with the fileStream.
    Dim xmlWriter As New System.Xml.XmlTextWriter _
       (stream, System.Text.Encoding.Unicode)

    ' Write to the file with the WriteXml method.
    thisDataSet.WriteXml(xmlWriter)
    xmlWriter.Close()
End Sub

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 로 modeWriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상

WriteXml(String, XmlWriteMode)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 DataSet를 사용하여 지정된 파일에 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

public:
 void WriteXml(System::String ^ fileName, System::Data::XmlWriteMode mode);
public void WriteXml (string fileName, System.Data.XmlWriteMode mode);
member this.WriteXml : string * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (fileName As String, mode As XmlWriteMode)

매개 변수

fileName
String

쓸 대상 파일 이름(경로 포함)입니다.

mode
XmlWriteMode

XmlWriteMode 값 중 하나입니다.

예외

FileIOPermissionWrite로 설정되지 않은 경우

예제

다음 예제에서는 메서드를 WriteXml 사용하여 XML 문서를 작성합니다.

private void WriteXmlToFile(DataSet thisDataSet)
{
    if (thisDataSet == null) { return; }

    // Create a file name to write to.
    string filename = "XmlDoc.xml";

    // Write to the file with the WriteXml method.
    thisDataSet.WriteXml(filename);
}
Private Sub WriteXmlToFile(thisDataSet As DataSet)
    If thisDataSet Is Nothing Then
        Return
    End If

    ' Create a file name to write to.
    Dim filename As String = "XmlDoc.xml"

    ' Write to the file with the WriteXml method.
    thisDataSet.WriteXml(filename)
End Sub

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 로 modeWriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상

WriteXml(TextWriter, XmlWriteMode)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 DataSetTextWriter를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

public:
 void WriteXml(System::IO::TextWriter ^ writer, System::Data::XmlWriteMode mode);
public void WriteXml (System.IO.TextWriter? writer, System.Data.XmlWriteMode mode);
public void WriteXml (System.IO.TextWriter writer, System.Data.XmlWriteMode mode);
member this.WriteXml : System.IO.TextWriter * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (writer As TextWriter, mode As XmlWriteMode)

매개 변수

writer
TextWriter

문서를 작성하는 데 사용되는 TextWriter 개체입니다.

mode
XmlWriteMode

XmlWriteMode 값 중 하나입니다.

예제

다음 예제에서는 먼저 하나의 DataTable, 두 개의 열 및 10개의 행을 사용하여 간단한 DataSet 을 만듭니다. DataSet 스키마와 데이터는 메서드를 호출 WriteXml 하여 디스크에 기록됩니다. 두 번째 DataSet 가 만들어지고 메서드를 ReadXml 사용하여 스키마 및 데이터로 채웁니다.

private void DemonstrateReadWriteXMLDocumentWithFileStream()
{
    // Create a DataSet with one table and two columns.
    DataSet originalDataSet = new DataSet("dataSet");
    DataTable table = new DataTable("table");
    DataColumn idColumn = new DataColumn("id",
        Type.GetType("System.Int32"));
    idColumn.AutoIncrement= true;

    DataColumn itemColumn = new DataColumn("item");
    table.Columns.Add(idColumn);
    table.Columns.Add(itemColumn);
    originalDataSet.Tables.Add(table);
    // Add ten rows.

    DataRow newRow;
    for(int i = 0; i < 10; i++)
    {
        newRow = table.NewRow();
        newRow["item"]= "item " + i;
        table.Rows.Add(newRow);
    }
    originalDataSet.AcceptChanges();

    // Print out values of each table in the DataSet
    // using the function defined below.
    PrintValues(originalDataSet, "Original DataSet");

    // Write the schema and data to XML file with FileStream.
    string xmlFilename = "XmlDocument.xml";
    System.IO.FileStream streamWrite = new System.IO.FileStream
        (xmlFilename, System.IO.FileMode.Create);

    // Use WriteXml to write the XML document.
    originalDataSet.WriteXml(streamWrite);

    // Close the FileStream.
    streamWrite.Close();

    // Dispose of the original DataSet.
    originalDataSet.Dispose();
    // Create a new DataSet.
    DataSet newDataSet = new DataSet("New DataSet");

    // Read the XML document back in.
    // Create new FileStream to read schema with.
    System.IO.FileStream streamRead = new System.IO.FileStream
        (xmlFilename,System.IO.FileMode.Open);
    newDataSet.ReadXml(streamRead);

    // Print out values of each table in the DataSet
    // using the function defined below.
    PrintValues(newDataSet,"New DataSet");
}

private void PrintValues(DataSet dataSet, string label)
{
    Console.WriteLine("\n" + label);
    foreach(DataTable table in dataSet.Tables)
    {
        Console.WriteLine("TableName: " + table.TableName);
        foreach(DataRow row in table.Rows)
        {
            foreach(DataColumn column in table.Columns)
            {
                Console.Write("\table " + row[column] );
            }
            Console.WriteLine();
        }
    }
}
Private Sub DemonstrateReadWriteXMLDocumentWithFileStream()
    ' Create a DataSet with one table and two columns.
    Dim originalDataSet As New DataSet("dataSet")
    Dim table As New DataTable("table")
    Dim idColumn As New DataColumn("id", _
       Type.GetType("System.Int32"))
    idColumn.AutoIncrement = True

    Dim itemColumn As New DataColumn("item")
    table.Columns.Add(idColumn)
    table.Columns.Add(itemColumn)
    originalDataSet.Tables.Add(table)

    ' Add ten rows.
    Dim newRow As DataRow
    Dim i As Integer
    For i = 0 To 9
        newRow = table.NewRow()
        newRow("item") = "item " & i.ToString()
        table.Rows.Add(newRow)
    Next i
    originalDataSet.AcceptChanges()

    ' Print out values of each table in the DataSet 
    ' using the function defined below.
    PrintValues(originalDataSet, "Original DataSet")

    ' Write the schema and data to XML file with FileStream.
    Dim xmlFilename As String = "XmlDocument.xml"
    Dim streamWrite As New System.IO.FileStream _
       (xmlFilename, System.IO.FileMode.Create)

    ' Use WriteXml to write the XML document.
    originalDataSet.WriteXml(streamWrite)

    ' Close the FileStream.
    streamWrite.Close()
     
    ' Dispose of the original DataSet.
    originalDataSet.Dispose()
    ' Create a new DataSet.
    Dim newDataSet As New DataSet("New DataSet")
       
    ' Read the XML document back in. 
    ' Create new FileStream to read schema with.
    Dim streamRead As New System.IO.FileStream _
       (xmlFilename, System.IO.FileMode.Open)
     
    newDataSet.ReadXml(streamRead)
    ' Print out values of each table in the DataSet  
    ' using the function defined below.
    PrintValues(newDataSet, "New DataSet")
End Sub
   
Private Sub PrintValues(dataSet As DataSet, label As String)
    Console.WriteLine(ControlChars.Cr & label)
    Dim table As DataTable
    Dim row As DataRow
    Dim column As DataColumn
    For Each table In  dataSet.Tables
        Console.WriteLine("TableName: " & table.TableName)         
        For Each row In  table.Rows             
            For Each column In  table.Columns
                Console.Write(ControlChars.Tab & " " & _
                   row(column).ToString())
            Next column
            Console.WriteLine()
        Next row
    Next table
End Sub

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 로 modeWriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상

WriteXml(Stream, XmlWriteMode)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 DataSetStream를 사용하여 XmlWriteMode의 현재 데이터를 쓰고 선택적으로 스키마를 씁니다. 스키마를 쓰려면 mode 매개 변수 값을 WriteSchema로 설정합니다.

public:
 void WriteXml(System::IO::Stream ^ stream, System::Data::XmlWriteMode mode);
public void WriteXml (System.IO.Stream? stream, System.Data.XmlWriteMode mode);
public void WriteXml (System.IO.Stream stream, System.Data.XmlWriteMode mode);
member this.WriteXml : System.IO.Stream * System.Data.XmlWriteMode -> unit
Public Sub WriteXml (stream As Stream, mode As XmlWriteMode)

매개 변수

stream
Stream

파일에 쓸 때 사용되는 Stream 개체입니다.

mode
XmlWriteMode

XmlWriteMode 값 중 하나입니다.

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 로 modeWriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상

WriteXml(String)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 파일에 DataSet의 현재 데이터를 씁니다.

public:
 void WriteXml(System::String ^ fileName);
public void WriteXml (string fileName);
member this.WriteXml : string -> unit
Public Sub WriteXml (fileName As String)

매개 변수

fileName
String

쓸 대상 파일 이름(경로 포함)입니다.

예외

FileIOPermissionWrite로 설정되지 않은 경우

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 포함하는 mode 오버로드 중 하나를 사용하고 해당 값을 로 WriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상

WriteXml(TextWriter)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 DataSet을 사용하여 TextWriter의 현재 데이터를 씁니다.

public:
 void WriteXml(System::IO::TextWriter ^ writer);
public void WriteXml (System.IO.TextWriter? writer);
public void WriteXml (System.IO.TextWriter writer);
member this.WriteXml : System.IO.TextWriter -> unit
Public Sub WriteXml (writer As TextWriter)

매개 변수

writer
TextWriter

쓰기에 사용할 TextWriter 개체입니다.

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 포함하는 mode 오버로드 중 하나를 사용하고 해당 값을 로 WriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상

WriteXml(XmlWriter)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 DataSetXmlWriter의 현재 데이터를 씁니다.

public:
 void WriteXml(System::Xml::XmlWriter ^ writer);
public void WriteXml (System.Xml.XmlWriter? writer);
public void WriteXml (System.Xml.XmlWriter writer);
member this.WriteXml : System.Xml.XmlWriter -> unit
Public Sub WriteXml (writer As XmlWriter)

매개 변수

writer
XmlWriter

쓰기에 사용할 XmlWriter입니다.

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 포함하는 mode 오버로드 중 하나를 사용하고 해당 값을 로 WriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상

WriteXml(Stream)

Source:
DataSet.cs
Source:
DataSet.cs
Source:
DataSet.cs

지정된 DataSet을 사용하여 Stream의 현재 데이터를 씁니다.

public:
 void WriteXml(System::IO::Stream ^ stream);
public void WriteXml (System.IO.Stream? stream);
public void WriteXml (System.IO.Stream stream);
member this.WriteXml : System.IO.Stream -> unit
Public Sub WriteXml (stream As Stream)

매개 변수

stream
Stream

파일에 쓸 때 사용되는 Stream 개체입니다.

예제

다음 예제에서는 개체를 System.IO.FileStream 만듭니다. 그런 다음 개체를 메서드와 함께 WriteXml 사용하여 XML 문서를 작성합니다.

private void WriteXmlToFile(DataSet thisDataSet)
{
    if (thisDataSet == null) { return; }

    // Create a file name to write to.
    string filename = "XmlDoc.xml";

    // Create the FileStream to write with.
    System.IO.FileStream stream = new System.IO.FileStream
        (filename, System.IO.FileMode.Create);

    // Write to the file with the WriteXml method.
    thisDataSet.WriteXml(stream);
}
Private Sub WriteXmlToFile(thisDataSet As DataSet)
     If thisDataSet Is Nothing Then
         Return
     End If 

    ' Create a file name to write to.
     Dim filename As String = "XmlDoc.xml"

     ' Create the FileStream to write with.
     Dim stream As New System.IO.FileStream _
        (filename, System.IO.FileMode.Create)

     ' Write to the file with the WriteXml method.
     thisDataSet.WriteXml(stream)
End Sub

설명

메서드는 WriteXml 데이터만 쓰거나 에서 XML 문서로 데이터와 스키마 DataSet 를 모두 작성하는 방법을 제공하는 반면 WriteXmlSchema 메서드는 스키마만 씁니다. 데이터와 스키마를 모두 작성하려면 매개 변수를 포함하는 mode 오버로드 중 하나를 사용하고 해당 값을 로 WriteSchema설정합니다.

ReadXmlSchema 메서드에 대해 ReadXml 각각 동일합니다. XML 데이터 또는 스키마와 데이터를 모두 로 DataSet읽으려면 메서드를 ReadXml 사용합니다. 스키마만 읽으려면 메서드를 ReadXmlSchema 사용합니다.

참고

InvalidOperationException 경우의 열 형식에 throw 됩니다 합니다 DataRow 에서 읽거나 쓴 구현 되 IDynamicMetaObjectProvider 구현 하지 않습니다 IXmlSerializable합니다.

추가 정보

적용 대상