工作用到的XML读取和写入

一.读取XML文件

1.循环读取指定的目录下的XML文件

 Public Shared Sub ReadFile()
        
Dim i As Integer
        
Dim FileName() As String
        
Dim FileNo As Integer
        
'FileName = Directory.GetFiles("d:\a")
        'C:\Inetpub\ftproot\SCSEFormReturn
        Dim FilePath As String = "C:\Inetpub\ftproot\SCSEFormReturn"
        FileName 
= Directory.GetFiles(FilePath)
        FileNo 
= Directory.GetFiles(FilePath).Length
        
For i = 0 To FileNo - 1
            
Dim strPathFileName As String = FileName(i)
            ReadXML(strPathFileName)
            MoveReadedXML(strPathFileName)
        
Next
    
End Sub

2.处理读取到的XML文件内容

 Public Shared Sub ReadXML(ByVal strPathFileName As String)
        
Dim TextReader As XmlTextReader = New XmlTextReader(strPathFileName)
        
Dim strEFormNO As String = ""
        
Dim strSNO As String = ""
        
Dim strDirectorID As String = ""
        
Dim strStatusFlag As String = ""
        
Do While TextReader.Read
          TextReader.MoveToElement()
          
If TextReader.NodeType = XmlNodeType.Element And TextReader.LocalName = "EFormNO" Then
                strEFormNO 
= TextReader.ReadString
           
End If

          
If TextReader.NodeType = XmlNodeType.Element And TextReader.LocalName = "SNO" Then
                strSNO 
= TextReader.ReadString
           
End If

        
If TextReader.NodeType = XmlNodeType.Element And TextReader.LocalName = "DirectorID" Then
                strDirectorID 
= TextReader.ReadString
         
End If

       
If TextReader.NodeType = XmlNodeType.Element And TextReader.LocalName = "StatusFlag" Then
                strStatusFlag 
= TextReader.ReadString
        
End If
        
Loop
   DALDB.ExecuteSql(DALXML.InsertSqlEFormReturn(strSNO, strEFormNO, strDirectorID, strStatusFlag))
   DALDB.ExecuteSql(DALXML.UpdateSqlScrap(strSNO, strDirectorID, strStatusFlag))
   TextReader.Close()
    
End Sub

3.读取过的文件移到指定的文件内

 Public Shared Sub MoveReadedXML(ByVal strPathFileName As String)
        
Dim FileName As String = Path.GetFileName(strPathFileName)
        
Dim MovePathFile As String = "C:\Inetpub\ftproot\SCSEFormReturn\Bak\" + FileName
        
If Directory.Exists(MovePathFile) = False Then
            Directory.Move(strPathFileName, MovePathFile)
        
Else
            Directory.Delete(MovePathFile)
        
End If
    
End Sub

二.写XML文件

Public Shared Sub WriteXML()
        
Dim XmlName As String = "WriteXML.xml"
        
Dim XmlSavePath As String = "D:\Save\" + XmlName + ""
        
Dim XmlWrite As XmlTextWriter = New XmlTextWriter(XmlSavePath, Encoding.UTF8)
        XmlWrite.WriteStartDocument(
False)
        
'name
        XmlWrite.WriteStartElement("name")
        XmlWrite.WriteElementString(
"fname""ike_li")
        XmlWrite.WriteElementString(
"Address""kunshan")
        
'/name
        XmlWrite.WriteEndElement()
        XmlWrite.WriteEndDocument()
        XmlWrite.Close()
    
End Sub

 

posted @ 2008-08-14 09:00  ike_li  阅读(399)  评论(0)    收藏  举报