XmlDocument.Save 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將 XML 文件儲存至指定的位置。
多載
Save(Stream) |
將 XML 文件儲存至指定的資料流。 |
Save(TextWriter) |
將 XML 文件儲存至指定的 TextWriter。 |
Save(String) |
將 XML 文件儲存至指定的檔案。 如果指定的檔案存在,則這個方法會覆寫該檔案。 |
Save(XmlWriter) |
將 XML 文件儲存至指定的 XmlWriter。 |
Save(Stream)
將 XML 文件儲存至指定的資料流。
public:
virtual void Save(System::IO::Stream ^ outStream);
public virtual void Save (System.IO.Stream outStream);
abstract member Save : System.IO.Stream -> unit
override this.Save : System.IO.Stream -> unit
Public Overridable Sub Save (outStream As Stream)
參數
- outStream
- Stream
要在其中儲存的資料流。
例外狀況
作業不會產生格式正確的 XML 文件 (例如,沒有文件項目或有重複的 XML 宣告)。
備註
只有在 設定為 true
時 PreserveWhitespace ,才會保留空白字元。
目前 XmlDocument
物件的 XmlDeclaration 會決定儲存檔中的編碼屬性。 編碼屬性的值取自 XmlDeclaration.Encoding 屬性。 XmlDocument
如果 沒有 XmlDeclaration,或 XmlDeclaration 沒有編碼屬性,則儲存的檔將不會有一個。
儲存檔時,會產生 xmlns 屬性來保存節點識別 (本機名稱 + 命名空間 URI) 正確。 例如,下列 C# 程式碼
XmlDocument doc = new XmlDocument();
doc.AppendChild(doc.CreateElement("item","urn:1"));
doc.Save(Console.Out);
會產生這個 xmls 屬性 <item xmls="urn:1"/>
。
此方法是檔物件模型 (DOM) 的 Microsoft 延伸模組。
請注意,只有 Save 方法會強制執行格式正確的 XML 檔。 所有其他 Save
多載只保證格式正確的片段。
適用於
Save(TextWriter)
將 XML 文件儲存至指定的 TextWriter。
public:
virtual void Save(System::IO::TextWriter ^ writer);
public virtual void Save (System.IO.TextWriter writer);
abstract member Save : System.IO.TextWriter -> unit
override this.Save : System.IO.TextWriter -> unit
Public Overridable Sub Save (writer As TextWriter)
參數
- writer
- TextWriter
要儲存的目標 TextWriter
。
例外狀況
作業不會產生格式正確的 XML 文件 (例如,沒有文件項目或有重複的 XML 宣告)。
備註
上的 TextWriter
編碼會決定寫出 (XmlDeclaration 節點的編碼方式會取代為) 的 TextWriter
編碼方式。 如果在 上 TextWriter
沒有指定編碼方式,則會 XmlDocument
在沒有編碼屬性的情況下儲存 。
此方法是檔物件模型 (DOM) 的 Microsoft 延伸模組。
請注意,只有 Save 方法會強制執行格式正確的 XML 檔。 所有其他 Save
多載只保證格式正確的片段。
適用於
Save(String)
將 XML 文件儲存至指定的檔案。 如果指定的檔案存在,則這個方法會覆寫該檔案。
public:
virtual void Save(System::String ^ filename);
public virtual void Save (string filename);
abstract member Save : string -> unit
override this.Save : string -> unit
Public Overridable Sub Save (filename As String)
參數
- filename
- String
您要儲存文件的目標檔案位置。
例外狀況
作業不會產生格式正確的 XML 文件 (例如,沒有文件項目或有重複的 XML 宣告)。
範例
下列範例會將 XML 載入 XmlDocument 物件、修改它,然後將它儲存至名為 data.xml 的檔案。
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
int main()
{
// Create the XmlDocument.
XmlDocument^ doc = gcnew XmlDocument;
doc->LoadXml( "<item><name>wrench</name></item>" );
// Add a price element.
XmlElement^ newElem = doc->CreateElement( "price" );
newElem->InnerText = "10.95";
doc->DocumentElement->AppendChild( newElem );
// Save the document to a file. White space is
// preserved (no white space).
doc->PreserveWhitespace = true;
doc->Save( "data.xml" );
}
using System;
using System.Xml;
public class Sample {
public static void Main() {
// Create the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.LoadXml("<item><name>wrench</name></item>");
// Add a price element.
XmlElement newElem = doc.CreateElement("price");
newElem.InnerText = "10.95";
doc.DocumentElement.AppendChild(newElem);
// Save the document to a file. White space is
// preserved (no white space).
doc.PreserveWhitespace = true;
doc.Save("data.xml");
}
}
Imports System.Xml
public class Sample
public shared sub Main()
' Create the XmlDocument.
Dim doc as XmlDocument = new XmlDocument()
doc.LoadXml("<item><name>wrench</name></item>")
' Add a price element.
Dim newElem as XmlElement = doc.CreateElement("price")
newElem.InnerText = "10.95"
doc.DocumentElement.AppendChild(newElem)
' Save the document to a file. White space is
' preserved (no white space).
doc.PreserveWhitespace = true
doc.Save("data.xml")
end sub
end class
data.xml檔案將包含下列 XML: <item><name>wrench</name><price>10.95</price></item>
。
備註
只有在 設為 true
時 PreserveWhitespace ,輸出檔才會保留空白字元。
目前 XmlDocument
物件的 XmlDeclaration 會決定儲存檔中的編碼屬性。 編碼屬性的值取自 XmlDeclaration.Encoding 屬性。 XmlDocument
如果 沒有 XmlDeclaration,或 XmlDeclaration 沒有編碼屬性,則儲存的檔將不會有一個。
儲存檔時,會產生 xmlns 屬性來保存節點識別 (本機名稱 + 命名空間 URI) 正確。 例如,下列 C# 程式碼
XmlDocument doc = new XmlDocument();
doc.AppendChild(doc.CreateElement("item","urn:1"));
doc.Save(Console.Out);
會產生這個 xmls 屬性 <item xmls="urn:1"/>
。
此方法是檔物件模型 (DOM) 的 Microsoft 延伸模組。
請注意,只有 Save 方法會強制執行格式正確的 XML 檔。 所有其他 Save
多載只保證格式正確的片段。
適用於
Save(XmlWriter)
將 XML 文件儲存至指定的 XmlWriter。
public:
virtual void Save(System::Xml::XmlWriter ^ w);
public virtual void Save (System.Xml.XmlWriter w);
abstract member Save : System.Xml.XmlWriter -> unit
override this.Save : System.Xml.XmlWriter -> unit
Public Overridable Sub Save (w As XmlWriter)
參數
要儲存的目標 XmlWriter
。
例外狀況
作業不會產生格式正確的 XML 文件 (例如,沒有文件項目或有重複的 XML 宣告)。
範例
下列範例會將 XML XmlDocument
載入物件,並將它儲存至檔案。
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
int main()
{
// Create the XmlDocument.
XmlDocument^ doc = gcnew XmlDocument;
doc->LoadXml( "<item><name>wrench</name></item>" );
// Add a price element.
XmlElement^ newElem = doc->CreateElement( "price" );
newElem->InnerText = "10.95";
doc->DocumentElement->AppendChild( newElem );
// Save the document to a file and auto-indent the output.
XmlTextWriter^ writer = gcnew XmlTextWriter( "data.xml", nullptr );
writer->Formatting = Formatting::Indented;
doc->Save( writer );
}
using System;
using System.Xml;
public class Sample {
public static void Main() {
// Create the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.LoadXml("<item><name>wrench</name></item>");
// Add a price element.
XmlElement newElem = doc.CreateElement("price");
newElem.InnerText = "10.95";
doc.DocumentElement.AppendChild(newElem);
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
// Save the document to a file and auto-indent the output.
XmlWriter writer = XmlWriter.Create("data.xml", settings);
doc.Save(writer);
}
}
Imports System.Xml
public class Sample
public shared sub Main()
' Create the XmlDocument.
Dim doc as XmlDocument = new XmlDocument()
doc.LoadXml("<item><name>wrench</name></item>")
' Add a price element.
Dim newElem as XmlElement = doc.CreateElement("price")
newElem.InnerText = "10.95"
doc.DocumentElement.AppendChild(newElem)
Dim settings As New XmlWriterSettings()
settings.Indent = True
' Save the document to a file and auto-indent the output.
Dim writer As XmlWriter = XmlWriter.Create("data.xml", settings)
doc.Save(writer)
end sub
end class
備註
只有在 設定為 true
時 PreserveWhitespace ,才會保留空白字元。
上的 XmlWriter
編碼會決定寫出 (XmlDeclaration 節點的編碼方式會取代為) 的 XmlWriter
編碼方式。 如果在 上 XmlWriter
沒有指定編碼方式,則會 XmlDocument
在沒有編碼屬性的情況下儲存 。
儲存檔時,會產生 xmlns 屬性來保存節點識別, (LocalName + NamespaceURI) 正確。 例如,下列 C# 程式碼
XmlDocument doc = new XmlDocument();
doc.AppendChild(doc.CreateElement("item","urn:1"));
doc.Save(Console.Out);
產生這個 xmls 屬性:
<item
xmls="urn:1"/>
此方法是檔物件模型 (DOM) 的 Microsoft 延伸模組。
請注意,只有 Save 方法會強制執行格式正確的 XML 檔。 所有其他 Save
多載只保證格式正確的片段。