Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Dateiformat von XML-Dateien ermitteln

Frage Entwicklung VB for Applications

Mitglied: nippon-tussi

nippon-tussi (Level 1) - Jetzt verbinden

06.10.2011 um 16:13 Uhr, 6924 Aufrufe, 4 Kommentare

Der Titel klingt wie ein Widerspruch in sich und doch gibt es Unterschiede

Ich mache gerade meine ersten Gehversuche mit System.xml und finde Unterschiede in den Formaten der XML-Dateien die ich lesen möchte:

Ein Teil sind ACSI-Dateien, ein anderer UTF-16 und den meisten fehlt die Formatangabe am Dateianfang (z.B. <?xml version="1.0" encoding="UTF-8"?>)

Ich kann zwar mit
01.
fileReader == My.Computer.FileSystem.ReadAllText(path, System.Text.Encoding.Unicode)

bzw
01.
fileReader == My.Computer.FileSystem.ReadAllText(path, System.Text.Encoding.ASCII)

und anschließendem
01.
LoadXml(fileReader)

die XML-Dateien lesen, aber wie stelle ich vorher ihr Format fest, wenn die Formatangabe in den Dateien fehlt?

Die einzige Möglichkeit die ich bis jetzt sehe ist, die Formate der Reihe nach zu lesen versuchen und dann das Ergebnis zu prüfen.

Ein einfaches
01.
xmlDocument.LoadXml(path)
führt z.B. bei UTF-16 Dateien ohne Header zum Fehler 'Ungültige Daten auf Stammebene. Zeile 1, Position 1.'

Danke fürs Lesen, Tussi
Mitglied: dog
06.10.2011 um 16:32 Uhr
Bitte warten ..
Mitglied: nippon-tussi
07.10.2011 um 23:03 Uhr
Genau das war mein erster Versuch, aber wenn ich damit eine Unicode-Datei ohne Header laden will bekomme ich eine XMLException:'Ein Name darf nicht mit dem Zeichen '.', hexadezimaler Wert 0x00, beginnen. Zeile 1, Position 2.'. Offenbar interpretiert Load eine Datei ohne Header als ASCII. Sobald ich in so einer Datei den Header <?xml version="1.0" encoding="UTF-16"?> voranstelle akzeptiert Load diese.
Bitte warten ..
Mitglied: dog
07.10.2011 um 23:50 Uhr
Eine XML-Datei ohne <?xml-Tag ist auch keine gültige XML-Datei!.

In dem Fall musst du eben selbst ran und das Encoding erkennen (entweder am UTF-BOM oder am (nicht-)vorhandensein bestimmter Zeichen).
Bitte warten ..
Mitglied: nippon-tussi
11.10.2011 um 01:17 Uhr
Genau das mache ich im Moment, indem ich versuche eine Datei mit unbekanntem Format als Unicode zu lesen und im Falle einer Exception die selbe Datei nochmal als ACSII lade. Ich hatte auf eine inteligentere Methode gehofft, zumal gerade in ASCII immernoch unterschiedliche Codepages auftauchen könnten...
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst VBS Suchen und Ersetzen bei UTF8 XML Dateien funktioniert nicht (7)

Frage von Nexxudus zum Thema VB for Applications ...

Viren und Trojaner
WannaCry - wiederhergestellte Dateien umbenennen (7)

Frage von MasterPhil zum Thema Viren und Trojaner ...

Hosting & Housing
Suche Hosting Plattform für Dateien (3)

Frage von geocast zum Thema Hosting & Housing ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Festplatten, SSD, Raid
PC stellt nach dem Bios ab (20)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...

Server-Hardware
Einem Stromausfall entgegen wirken (19)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema Server-Hardware ...

iOS
16 iPads zentrall verwalten (18)

Frage von simonlohr zum Thema iOS ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...