XDocument.Save Yöntem

Tanım

Bunu XDocument bir dosya, bir TextWriterveya XmlWriterbir olarak serileştirir.

Aşırı Yüklemeler

Name Description
Save(XmlWriter)

Bunu XDocument bir XmlWriterolarak serileştirin.

Save(Stream)

Bunu XDocument belirtilen Streamöğesine döndürür.

Save(TextWriter)

Bunu XDocument bir TextWriterolarak seri hale getirme.

Save(String)

Varsa, varolan bir dosyanın üzerine yazarak bunu XDocument bir dosyaya seri hale getirin.

Save(Stream, SaveOptions)

Bunu XDocument , isteğe bağlı olarak biçimlendirme davranışını belirterek belirtilen Streamöğesine aktarır.

Save(TextWriter, SaveOptions)

Bunu XDocument bir TextWriterolarak seri hale getirerek isteğe bağlı olarak biçimlendirmeyi devre dışı bırak.

Save(String, SaveOptions)

Bunu XDocument bir dosyaya seri hale getirerek isteğe bağlı olarak biçimlendirmeyi devre dışı bırak.

Save(XmlWriter)

Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs

Bunu XDocument bir XmlWriterolarak serileştirin.

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

Parametreler

writer
XmlWriter

XmlWriter XDocument Yazılacak bir.

Örnekler

Aşağıdaki örnekte bir XDocument öğesine nasıl kaydedilecek gösterilmektedir XmlWriter.

StringBuilder sb = new StringBuilder();
XmlWriterSettings xws = new XmlWriterSettings();
xws.OmitXmlDeclaration = true;
xws.Indent = true;

using (XmlWriter xw = XmlWriter.Create(sb, xws)) {
    XDocument doc = new XDocument(
        new XElement("Child",
            new XElement("GrandChild", "some content")
        )
    );
    doc.Save(xw);
}

Console.WriteLine(sb.ToString());
Dim sb As StringBuilder = New StringBuilder()
Dim xws As XmlWriterSettings = New XmlWriterSettings()
xws.OmitXmlDeclaration = True
xws.Indent = True

Using xw = XmlWriter.Create(sb, xws)
    Dim doc As XDocument = New XDocument(<Child><GrandChild>some content</GrandChild></Child>)
    doc.Save(xw)

End Using

Console.WriteLine(sb.ToString())

Bu örnek aşağıdaki çıkışı oluşturur:

<Child>
  <GrandChild>some content</GrandChild>
</Child>

Ayrıca bkz.

Şunlara uygulanır

Save(Stream)

Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs

Bunu XDocument belirtilen Streamöğesine döndürür.

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

Parametreler

stream
Stream

Bunun XDocument çıkışını almak için akış.

Açıklamalar

Seri hale getirilmiş XML girintili olacaktır. Tüm önemsiz boşluk kaldırılacak ve XML'nin düzgün girintilenebilmesi için ek boşluk eklenecektir. Bu yöntemin davranışı, önemsiz boşlukların korunmamasıdır.

Boşluğu denetlemek istiyorsanız, parametresi olarak alan Save aşırı yüklemesini SaveOptions kullanın. DisableFormatting Unindented XML kaydetmek için seçeneğini kullanın. Bu, yazıcının tüm beyaz boşlukları tam olarak XML ağacında gösterildiği gibi yazmasına neden olur.

Yinelenen ad alanı bildirimlerini kaldırmak istiyorsanız seçeneğini kullanın OmitDuplicateNamespaces .

Şunlara uygulanır

Save(TextWriter)

Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs

Bunu XDocument bir TextWriterolarak seri hale getirme.

public:
 void Save(System::IO::TextWriter ^ textWriter);
public void Save(System.IO.TextWriter textWriter);
member this.Save : System.IO.TextWriter -> unit
Public Sub Save (textWriter As TextWriter)

Parametreler

textWriter
TextWriter

TextWriter XDocument Yazılacak bir.

Örnekler

Aşağıdaki örnek bir XDocumentoluşturur, belgeyi bir StringWriteröğesine kaydeder ve ardından dizeyi konsola yazdırır.

StringBuilder sb = new StringBuilder();

XDocument doc = new XDocument(
    new XElement("Root",
        new XElement("Child", "content")
    )
);
TextWriter tr = new StringWriter(sb);
doc.Save(tr);
Console.WriteLine(sb.ToString());
Dim sb As StringBuilder = New StringBuilder()

Dim doc As XDocument = _
    <?xml version="1.0" encoding="utf-8"?>
        <Root><Child>content</Child></Root>

Dim tr As TextWriter = New StringWriter(sb)
doc.Save(tr)
Console.WriteLine(sb.ToString())

Bu örnek aşağıdaki çıkışı oluşturur:

<?xml version="1.0" encoding="utf-16"?>
<Root>
  <Child>content</Child>
</Root>

Açıklamalar

Seri hale getirilmiş XML girintili olacaktır. Tüm önemsiz boşluk kaldırılacak ve XML'nin düzgün girintilenebilmesi için ek boşluk eklenecektir. Bu yöntemin davranışı, önemsiz boşlukların korunmamasıdır.

Boşluğu denetlemek istiyorsanız, parametresi olarak alan Save aşırı yüklemesini SaveOptions kullanın. Daha fazla bilgi için bkz . XML'yi yüklerken veya ayrıştırırken boşluklarıkoruma ve Seri hale getirirken boşlukları koruma.

Ayrıca bkz.

Şunlara uygulanır

Save(String)

Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs

Varsa, varolan bir dosyanın üzerine yazarak bunu XDocument bir dosyaya seri hale getirin.

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

Parametreler

fileName
String

Dosyanın adını içeren bir dize.

Örnekler

Aşağıdaki örnek bir XDocumentoluşturur, belgeyi bir dosyaya kaydeder ve ardından dosyayı konsola yazdırır.

XDocument doc = new XDocument(
    new XElement("Root",
        new XElement("Child", "content")
    )
);
doc.Save("Root.xml");
Console.WriteLine(File.ReadAllText("Root.xml"));
Dim doc As XDocument = _
    <?xml version="1.0" encoding="utf-8"?>
        <Root><Child>content</Child></Root>

doc.Save("Root.xml")
Console.WriteLine(File.ReadAllText("Root.xml"))

Bu örnek aşağıdaki çıkışı oluşturur:

<?xml version="1.0" encoding="utf-8"?>
<Root>
  <Child>content</Child>
</Root>

Açıklamalar

Seri hale getirilmiş XML girintili olacaktır. Tüm önemsiz boşluk kaldırılacak ve XML'nin düzgün girintilenebilmesi için ek boşluk eklenecektir. Bu yöntemin davranışı, önemsiz boşlukların korunmamasıdır.

Boşluğu denetlemek istiyorsanız, parametresi olarak alan Save aşırı yüklemesini SaveOptions kullanın. Daha fazla bilgi için bkz . XML'yi yüklerken veya ayrıştırırken boşluklarıkoruma ve Seri hale getirirken boşlukları koruma.

Ayrıca bkz.

Şunlara uygulanır

Save(Stream, SaveOptions)

Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs

Bunu XDocument , isteğe bağlı olarak biçimlendirme davranışını belirterek belirtilen Streamöğesine aktarır.

public:
 void Save(System::IO::Stream ^ stream, System::Xml::Linq::SaveOptions options);
public void Save(System.IO.Stream stream, System.Xml.Linq.SaveOptions options);
member this.Save : System.IO.Stream * System.Xml.Linq.SaveOptions -> unit
Public Sub Save (stream As Stream, options As SaveOptions)

Parametreler

stream
Stream

Bunun XDocument çıkışını almak için akış.

options
SaveOptions

SaveOptions Biçimlendirme davranışını belirten bir.

Açıklamalar

varsayılan olarak options olarak ayarlanır None. Bu seçenek tüm gereksiz önemsiz boşlukları kaldırır ve XML'nin düzgün girintili olması için uygun önemsiz boşluk ekler.

Girintisiz XML'yi kaydetmek istiyorsanız için bayrağını DisableFormattingoptionsbelirtin. Bu, yazıcının tüm beyaz boşlukları tam olarak XML ağacında gösterildiği gibi yazmasına neden olur.

Yinelenen ad alanı bildirimlerini kaldırmak istiyorsanız seçeneğini kullanın OmitDuplicateNamespaces .

Şunlara uygulanır

Save(TextWriter, SaveOptions)

Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs

Bunu XDocument bir TextWriterolarak seri hale getirerek isteğe bağlı olarak biçimlendirmeyi devre dışı bırak.

public:
 void Save(System::IO::TextWriter ^ textWriter, System::Xml::Linq::SaveOptions options);
public void Save(System.IO.TextWriter textWriter, System.Xml.Linq.SaveOptions options);
member this.Save : System.IO.TextWriter * System.Xml.Linq.SaveOptions -> unit
Public Sub Save (textWriter As TextWriter, options As SaveOptions)

Parametreler

textWriter
TextWriter

TextWriter XML'nin çıkışını almak için.

options
SaveOptions

SaveOptions Biçimlendirme davranışını belirten bir.

Örnekler

Aşağıdaki örnekte bu yöntemin iki kullanımları gösterilmektedir. İlk kullanım, ile biçimlendirmesini XDocument serileştirir. İkincisi boşluğu korur. Belgenin içinde oluşturulurken boşluk olmadığından, boşluk korunarak XML'de girintileme olmadan çıkış oluşturulur.

XDocument doc = new XDocument(
    new XElement("Root",
        new XElement("Child", "content")
    )
);
StringBuilder sb1 = new StringBuilder();
using (StringWriter sr1 = new StringWriter(sb1)) {
    doc.Save(sr1, SaveOptions.None);
    Console.WriteLine(sb1.ToString());
}

StringBuilder sb2 = new StringBuilder();
using (StringWriter sr2 = new StringWriter(sb2)) {
    doc.Save(sr2, SaveOptions.DisableFormatting);
    Console.WriteLine(sb2.ToString());
}
Dim doc As XDocument = _
    <?xml version="1.0" encoding="utf-8"?>
        <Root><Child>content</Child></Root>

Dim sb1 As StringBuilder = New StringBuilder()

Using sr1 = New StringWriter(sb1)
    doc.Save(sr1, SaveOptions.None)
    Console.WriteLine(sb1.ToString())
End Using

Dim sb2 As StringBuilder = New StringBuilder()

Using sr2 = New StringWriter(sb2)
    doc.Save(sr2, SaveOptions.DisableFormatting)
    Console.WriteLine(sb2.ToString())
End Using

Bu örnek aşağıdaki çıkışı oluşturur:

<?xml version="1.0" encoding="utf-16"?>
<Root>
  <Child>content</Child>
</Root>
<?xml version="1.0" encoding="utf-16"?><Root><Child>content</Child></Root>

Açıklamalar

Girintisiz XML'yi kaydetmek istiyorsanız için bayrağını DisableFormattingoptionsbelirtin. Bu, yazıcının tüm boşlukları tam olarak XML ağacında gösterildiği gibi yazmasına neden olur.

Girintili XML'yi kaydetmek istiyorsanız için bayrağını DisableFormattingoptionsbelirtmeyin. Bu, tüm gereksiz önemsiz boşlukları kaldırır ve XML'nin düzgün girintili olması için uygun önemsiz boşluk ekler. Bu, varsayılan davranıştır ve parametre olarak almayan Save yöntemlerin options aşırı yüklemelerinin davranışıdır.

Daha fazla bilgi için bkz . XML'yi yüklerken veya ayrıştırırken boşluklarıkoruma ve Seri hale getirirken boşlukları koruma.

Ayrıca bkz.

Şunlara uygulanır

Save(String, SaveOptions)

Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs
Kaynak:
XDocument.cs

Bunu XDocument bir dosyaya seri hale getirerek isteğe bağlı olarak biçimlendirmeyi devre dışı bırak.

public:
 void Save(System::String ^ fileName, System::Xml::Linq::SaveOptions options);
public void Save(string fileName, System.Xml.Linq.SaveOptions options);
member this.Save : string * System.Xml.Linq.SaveOptions -> unit
Public Sub Save (fileName As String, options As SaveOptions)

Parametreler

fileName
String

Dosyanın adını içeren bir dize.

options
SaveOptions

SaveOptions Biçimlendirme davranışını belirten bir.

Örnekler

Aşağıdaki örnekte bu yöntemin iki kullanımları gösterilmektedir. İlk kullanımda boşluk korunur. İkincisinde girintileme ile seri hale getirildi XDocument .

XDocument doc = new XDocument(
    new XElement("Root",
        new XElement("Child", "content")
    )
);
doc.Save("Root1.xml", SaveOptions.DisableFormatting);
Console.WriteLine(File.ReadAllText("Root1.xml"));
doc.Save("Root2.xml", SaveOptions.None);
Console.WriteLine(File.ReadAllText("Root2.xml"));
Dim doc As XDocument = _
    <?xml version="1.0" encoding="utf-8"?>
        <Root><Child>content</Child></Root>

doc.Save("Root1.xml", SaveOptions.DisableFormatting)
Console.WriteLine(File.ReadAllText("Root1.xml"))
doc.Save("Root2.xml", SaveOptions.None)
Console.WriteLine(File.ReadAllText("Root2.xml"))

Bu örnek aşağıdaki çıkışı oluşturur:

<?xml version="1.0" encoding="utf-8"?><Root><Child>content</Child></Root>
<?xml version="1.0" encoding="utf-8"?>
<Root>
  <Child>content</Child>
</Root>

Açıklamalar

Girintisiz XML'yi kaydetmek istiyorsanız için bayrağını DisableFormattingoptionsbelirtin. Bu, yazıcının tüm boşlukları tam olarak XML ağacında gösterildiği gibi yazmasına neden olur.

Girintili XML'yi kaydetmek istiyorsanız için bayrağını DisableFormattingoptionsbelirtmeyin. Bu, tüm gereksiz önemsiz boşlukları kaldırır ve XML'nin düzgün girintili olması için uygun önemsiz boşluk ekler. Bu, varsayılan davranıştır ve parametre olarak almayan Save yöntemlerin options aşırı yüklemelerinin davranışıdır.

Daha fazla bilgi için bkz . XML'yi yüklerken veya ayrıştırırken boşluklarıkoruma ve Seri hale getirirken boşlukları koruma.

Ayrıca bkz.

Şunlara uygulanır