C#.net读写XML文件

WriteRaw手工写入一行,不作任何处理                       

writer.WriteRaw("this & that"); 
   
WriteEntityRef 写入实体引用,即前面加“&”后面加“;”       

 writer.WriteEntityRef("h"); 
  
WriteProcessingInstruction写入处理指令,                 

writer.WriteProcessingInstruction("xml-stylesheet",PItext); 
即前面加“<?”后面加“?>” 
   
WriteComment写入注释,自动加入注释标志“<!--”和“-->”        

writer.WriteComment("sample XML"); 
   
Flush  把缓存中的内容写入文件                            

writer.Flush(); 
  
Close 关闭,如有未闭合的元素,自动闭合                   

writer.Close(); 

        其中WriteString方法会对字符串进行下述处理: 

        1.字符“&”、“<”和“>”转化为“&”、“<”和“>”。 

        2.ASCII码为0~1F(十六进制)的字符转化为“&#0”~“F”。 

        3.如果是在写属性的值则双引号“””转化为“"”;单引号 “’”转化为“&apos;”。 

  
 下面给大家写出一个例程,由于注释比较详细就不作过多解释了。 

 using System; 
 using System.IO; 
 using System.Xml; 
  
 public class Sample 
 { 
     private const string filename = "sampledata.xml"; 
  
     public static void Main() 
    { 
        XmlTextWriter writer = null; 

        writer = new XmlTextWriter (filename, null); 
        //为使文件易读,使用缩进 
        writer.Formatting = Formatting.Indented; 

        //写XML声明 
        writer.WriteStartDocument(); 

        //引用样式 
        String PItext="type='text/xsl' href='book.xsl'"; 
        writer.WriteProcessingInstruction("xml-stylesheet", PItext); 

        //Write the DocumentType node 
        writer.WriteDocType("book", null , null, "<!ENTITY h 'hardcover'>"); 
         
        //写入注释 
        writer.WriteComment("sample XML"); 
     
        //写一个元素(根元素) 
        writer.WriteStartElement("book"); 

        // genre 属性 
        writer.WriteAttributeString("genre", "novel"); 
      
        // ISBN 属性 
        writer.WriteAttributeString("ISBN", "1-8630-014"); 

        //书名元素 
        writer.WriteElementString("title", "The Handmaid's Tale"); 
               
        //Write the style element 
        writer.WriteStartElement("style"); 
        writer.WriteEntityRef("h"); 
        writer.WriteEndElement();  

        //价格元素 
        writer.WriteElementString("price", "19.95"); 

        //写入 CDATA 
        writer.WriteCData("Prices 15% off!!"); 

        //关闭根元素 
        writer.WriteEndElement(); 
              
        writer.WriteEndDocument(); 

        //缓冲器内的内容写入文件 
        writer.Flush(); 
        writer.Close();   
      
        XmlDocument doc = new XmlDocument(); 
         
        doc.PreserveWhitespace = true; 
        //加载文件 
        doc.Load(filename);   
     
        //XML文件的内容显示在控制台 
        Console.Write(doc.InnerXml);   
        //等待用户阅读 
        Console.In.Read(); 
    } 

你可能感兴趣的:(xml,null)