Guten Morgen,
mit dem nachstehenden Code erzeuge ich eine Importdatei für meine Fritz Box (Telefonbuch).
Der Import funktioniert fehlerfrei.
Nun möchte ich die Datei an anderer Stelle auslesen und an ein DGV übergeben.
Mein Ansatz die Daten auszulesen ist der falsche.
mit dem nachstehenden Code erzeuge ich eine Importdatei für meine Fritz Box (Telefonbuch).
VB.NET-Quellcode
- Public Sub Fritzboxkontakt_Erstellung()
- Dim Datei As String = Pfade.System.Pfad & "FBoxKontakt.xml"
- If File.Exists(Datei) Then File.Delete(Datei)
- Dim Writer As StreamWriter = Nothing
- Writer = My.Computer.FileSystem.OpenTextFileWriter(Datei, True)
- Dim Zeile As DataRow = Nothing
- Dim Nameszeile As String = Nothing
- Dim Adresse As String = Nothing
- Dim Telefon1 As String = Nothing
- Dim Telefon2 As String = Nothing
- Dim Mobil1 As String = Nothing
- Dim Mobil2 As String = Nothing
- Dim SchreibeText As String = Nothing
- With Writer
- .WriteLine("<?xml version=" & """1.0""" & " encoding=" & """utf-8""" & "?>")
- .WriteLine("<phonebooks>")
- .WriteLine("<phonebook owner" & "=" & """1""" & " name" & "=" & """TB MBHome""" & ">")
- For I As Integer = 0 To Daten.Basis.Kontaktdaten.Rows.Count - 1
- Zeile = Daten.Basis.Kontaktdaten(I)
- Nameszeile = Nothing
- Adresse = Nothing
- Telefon1 = Nothing
- Telefon2 = Nothing
- Mobil1 = Nothing
- Mobil2 = Nothing
- Nameszeile = Zeile("Kontaktzeile").ToString
- Nameszeile = Nameszeile.Replace(",", "")
- Nameszeile = Nameszeile.Replace("&", "und")
- Telefon1 = Zeile("Telefon1").ToString
- Telefon1 = Telefon1.Replace("-", " ")
- Telefon2 = Zeile("Telefon2").ToString
- Telefon2 = Telefon2.Replace("-", " ")
- If Not IsDBNull(Zeile("IK")) Then
- If Not CBool(Zeile("IK")) Then
- Mobil1 = Zeile("Mobil1").ToString
- Mobil1 = Mobil1.Replace("-", " ")
- Mobil2 = Zeile("Mobil2").ToString
- Mobil2 = Mobil2.Replace("-", " ")
- End If
- End If
- SchreibeText = "<contact><category>0</category><person><realName>" & Nameszeile & "</realName></person><telephony>"
- If Not Telefon1 = Nothing Then
- SchreibeText = SchreibeText & "<number " & "type" & "=" & """home""" & " prio" & "=" & """0""" & ">" & Telefon1 & "</number>"
- End If
- If Not Telefon2 = Nothing Then
- SchreibeText = SchreibeText & "<number " & "type" & "=" & """home""" & " prio" & "=" & """0""" & ">" & Telefon2 & "</number>"
- End If
- If Not Mobil1 = Nothing Then
- SchreibeText = SchreibeText & "<number " & "type" & "=" & """mobile""" & " prio" & "=" & """0""" & ">" & Mobil1 & "</number>"
- End If
- If Not Mobil2 = Nothing Then
- SchreibeText = SchreibeText & "<number " & "type" & "=" & """mobile""" & " prio" & "=" & """0""" & ">" & Mobil2 & "</number>"
- End If
- SchreibeText = SchreibeText & "</telephony></contact>"
- .WriteLine(SchreibeText)
- Next I
- .WriteLine("</phonebook>")
- .WriteLine("</phonebooks>")
- .Close()
- End With
- MessageBox.Show("Die Kontaktliste für den Import Fritzbox wurde erstellt.", "Kontakt (Telefonie)" & Vorlagen.Copyright_Messagebox,
- MessageBoxButtons.OK, MessageBoxIcon.Information)
- End Sub
Der Import funktioniert fehlerfrei.
Nun möchte ich die Datei an anderer Stelle auslesen und an ein DGV übergeben.
VB.NET-Quellcode
- Dim DateiPfad As String = Pfade.System.Pfad & "FBoxKontakt.xml"
- Dim Datenset As New DataSet
- Datenset.ReadXml(DateiPfad)
- MsgBox(Datenset.Tables.Count.ToString)
- Tab_Telefonbuch = New DataTable
- With Tab_Telefonbuch
- .TableName = "FBoxKontakt"
- .Columns.Add("Name", GetType(String))
- .Columns.Add("Telefon1", GetType(String))
- End With
- Dim NeueZeile As DataRow = Nothing
- Dim NameZeile As DataRow = Nothing
- Dim Tele1 As DataRow = Nothing
- For I = 0 To Datenset.Tables(2).Rows.Count - 1
- NeueZeile = Tab_Telefonbuch.NewRow
- NameZeile = Datenset.Tables(2).Rows(I)
- Tele1 = Datenset.Tables(4).Rows(I)
- NeueZeile("Name") = NameZeile(0)
- NeueZeile("Telefon1") = Tele1(0)
- Tab_Telefonbuch.Rows.Add(NeueZeile)
- Next I
- With DGV_Telefonbuch
- .DataSource = Tab_Telefonbuch
- End With
Mein Ansatz die Daten auszulesen ist der falsche.
Gruß Markus
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Westerwälder“ ()