Zum Inhalt springen
  • 0

C# maskieren in xml-Dateien


Tician

Frage

Ein fröhliches Hallo!

ich suche eine Azubi-Verständliche Lösung zu einem Problem:

Ich habe XML-Dateien mit Sonderzeichen (Á, Ö, &, Ë,...), also die ganze Palette und möchte diese im XML-Stil maskieren (aus '&' wird '&' ,...).

Jetzt möchte ich natürlich nicht jedes einzelne Zeichen suchen und ersetzen, gibt es da bereits eine Klasse die ich benutzen kann? Ich weiß das es einiges mit XML gibt, aber so wirklich verstehen tu ich es nicht :(

https://msdn.microsoft.com/de-de/library/4zhk8s1x(v=vs.110).aspx

Das schreibt zum Beispiel eine XML und maskiert Sonderzeichen, aber ich muss keine XML schreiben die existiert ja schon...

Würde mich freuen wenn mir jemand auf die Sprünge helfen könnte.

 

Tician

 

Edit: Ich hab gerade gesehen das auch die Zeichen "<" und ">" so maskiert werde würden, das will ich natürlich nicht, ich will nur die Werte innerhalb der Klammern (ich hab keine AHnung was der Begriff dafür ist) maskieren.

Beispiel:

<blabla>Hö</blabla>

Soll so aussehen:

<blabla>H&#246;</blabla>

 

Bearbeitet von Tician
Link zu diesem Kommentar
Auf anderen Seiten teilen

7 Antworten auf diese Frage

Empfohlene Beiträge

  • 1
vor 56 Minuten schrieb Tician:

data[count] = HttpUtility.HtmlEncode(s);

Nicht HttpUtility, sondern WebUtility :)

Also mein VisualStudios2013 kennt es jedenfalls, wenn ich System.Net einbinde. Und es funktioniert auch einwandfrei.

Was ist data[count] denn für ein Datentyp? Die Methode gibt einen String zurück, also muss data[count] auch ein String sein.

Bearbeitet von Rienne
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0

Das klingt gut. Wurde 2016 veröffentlicht, kann es sein das mein VS 2015 zu alt ist?

Ich kam inspiriert von deinem Link auf folgende Seite die auch ein Beispiel hat:

https://msdn.microsoft.com/de-de/library/7c5fyk1k(v=vs.110).aspx

Aber selbst mit den Namespaces 

System.Web

System.IO

System.Net

kennt mein VS kein "WebUtility.HtmlDecode" und auch kein "HttpUtility.HtmlEncode". Auch die Mögliochkeiten zur automatischen Fehlerkorrektur die einem normalerweise auch die fehlenden Namespace anzeigt gibt mir kein Ergebnis außer die EIgenschaft oder Klasse selbst zu generieren.

 

Bearbeitet von Tician
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0

Ahrgs langsam, ich bin FISI-Azubi, was ist ein Zielprofil? Projekttyp... äh Konsolenanwendung?

Pseudo-unvollständiger Code (sollte aber ausreichen):

using System;
using System.Text;
using System.IO;
using Microsoft.Win32;
using System.Web;
using System.Net;

namespace XML
{
    class Program
    {
        static void Main(string[] args)
        {

            try
            {

                                foreach (string s in line)
                                {
                                    //data[count] = s.Replace("&", "&amp_;");
                                    data[count] = HttpUtility.HtmlEncode(s);
                                    count = count + 1;
                                }
			}

            catch (Exception ex)
            {
                Console.WriteLine(ex);
                Console.ReadKey();
            }
        }
    }
}

Dieses HttpUtility wird einfach nicht erkannt.

"Der Name "HttpUtility" ist im aktuellen Kontext nicht vorhanden.

Edit: Das Forum interpretiert das maskierungszeichen für "&" deswegen habe ich einen Unterstrich rein gesetzt, sollte nur ein Beispiel sein.

Bearbeitet von Tician
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Diese Frage beantworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...