Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

HTML-Sonderzeichen in ASCII-Sonderzeichen konvertieren

Frage Entwicklung Visual Studio

Mitglied: visualbasic

visualbasic (Level 1) - Jetzt verbinden

19.10.2012, aktualisiert 20.10.2012, 3791 Aufrufe, 6 Kommentare

Hallo,
ich habe ein Programm zum Übersetzen geschrieben.
Jetzt stelle ich aber fest, dass wenn ich "Hallo" auf z.B. Russisch übersetzen möchte, folgendes rauskommt:
Алло"
. Normalerweise sollte folgendes kommen
привет (Priviet)
, was aber auch komisch ist, da ja das "&#1083" zweimal vorkommt...

Wenn man Diese Zeichenfolge in einer Gogglesuche verwendet, kommt das raus:
Алло
Zitat von wiesi200:
Was auch "komisch" ist du kriegst 4 Zeichen raus, willst aber 6 haben.
Ist mir aber erstmals egal, sorry, denn im Russischen gibt es sowohl
01.
привет
, als auch
01.
Алло
für "hallo", wodurch ich jetzt schonmal weiß, dass
Алло"
für
Алло
steht.

Gibt es i-eine Möglichkeit, das umzuwandeln?

In CSharp geht es ja so
01.
System.Web.HttpUtility.HtmlDecode(text)
Liegt es vielleicht daran, dass ich am "New WebClient" die Encoding auf
01.
System.Text.Encoding.Default
gestellt habe? Habe es aner schon mit ASCII versucht; geht auch nicht...

// EDIT

Quelltext des Programms:
01.
Public Class Form1 
02.
    Dim temp As String, eingang As String = "de", ausgang As String = "en" 
03.
 
04.
    Public Function TranslateText(ByVal TextToTranslate As String, ByVal lngInput As String, ByVal lngOutput As String) As String 
05.
        Dim result As String 
06.
        Dim url As String = [String].Format("http://www.google.com/translate_t?hl=en&ie=UTF8&text={0}&langpair={1}|{2}", TextToTranslate, lngInput, lngOutput) 
07.
        Dim webClient As New Net.WebClient() 
08.
        webClient.Encoding = System.Text.Encoding.Default 
09.
        result = webClient.DownloadString(url) 
10.
        Dim match As String = "id=result_box" 
11.
        Dim i As Integer = result.IndexOf(match) + 20 
12.
        Dim f As Integer = result.IndexOf(match) + 500 
13.
        result = Mid(result, i, f) 
14.
        result = Mid(result, 1, result.IndexOf("</div>")) 
15.
        result = result.Replace("<span title=", "") 
16.
        result = result.Replace("</span>", "") 
17.
        result = result.Replace("&#39;", "'") 
18.
        result = result.Substring(result.LastIndexOf(">") + 1) 
19.
        Return result 
20.
    End Function 
21.
 
22.
    Private Sub Input_Box_TextChanged() Handles Input_Box.TextChanged 
23.
        Select Case ComboBox1.SelectedItem 
24.
            Case "Deutsch" 
25.
                eingang = "de" 
26.
            Case "Englisch" 
27.
                eingang = "en" 
28.
            Case "Französisch" 
29.
                eingang = "fr" 
30.
        End Select 
31.
 
32.
        Select Case ComboBox2.SelectedItem 
33.
            Case "Deutsch" 
34.
                ausgang = "de" 
35.
            Case "Englisch" 
36.
                ausgang = "en" 
37.
            Case "Französisch" 
38.
                ausgang = "fr" 
39.
        End Select 
40.
 
41.
        Output_Box.Text = TranslateText(Input_Box.Text, eingang, ausgang) 
42.
    End Sub 
43.
End Class
Wie mach ich das? Nehme auch gern eine DLL, wenn nötig...
Freundliche Grüße Chris
Mitglied: wiesi200
19.10.2012 um 20:47 Uhr
Hallo
Was auch "komisch" ist du kriegst 4 Zeichen raus, willst aber 6 haben.
Da hast du glaub ich schon mal ein anderes größeres Problem.
Bitte warten ..
Mitglied: wiesi200
20.10.2012 um 07:47 Uhr
Wenn du wissen willst woran das es liegt, dann müsstest du eigentlich den Quelltext posten denn woher sollen wir wissen was du alles eingestellt hast. Mal abgesehen davon von dem in was du Programmierst? Vermutlich immer noch VB.Net?

Aber mit deinem

01.
System.Web.HttpUtility.HtmlDecode(text)
Das ist ein Bestandteil des .Net Framework 4.5
Somit solltest du es innerhalb jeder .Net Sprache verwenden können.
Eben auch in VB.NET.

Für die genaue Syntax kannst du bei MSDN suchen.
Bitte warten ..
Mitglied: visualbasic
20.10.2012 um 08:47 Uhr
Habs jetzt aktualisiert, was mach ich jetzt?
Bitte warten ..
Mitglied: 76109
20.10.2012 um 10:45 Uhr
Hallo visualbasic!

Die dezimalen Zeichencodes (&#1040;&#1083;&#1083;&#1086;) aus dem kyrillischen Zeichensatz entsprechem dem Wort 'Алло'

Gruß Dieter
Bitte warten ..
Mitglied: visualbasic
20.10.2012 um 11:34 Uhr
Zitat von 76109:
Hallo visualbasic!

Die dezimalen Zeichencodes (Алло) aus dem kyrillischen Zeichensatz entsprechem dem Wort
'Алло'
Danke, aber das stand 2 Stunden bevor du das geschriben hast, in meinem Beitrag...

Gruß Chris
Bitte warten ..
Mitglied: visualbasic
26.12.2012 um 12:21 Uhr
Zitat von wiesi200:
01.
> System.Web.HttpUtility.HtmlDecode(text) 
02.
> 
Bei mir kommen nach "System.Web" nur ASP-Sachen
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Sonderzeichen bei Terminen - Office 2016

Frage von Martinaaa zum Thema Microsoft Office ...

Batch & Shell
gelöst Sonderzeichen in der CMD Konsole darstellen? (1)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

Batch & Shell
gelöst Sonderzeichen aus einer Variable entfernen? (13)

Frage von Kriegstreiber zum Thema Batch & Shell ...

Drucker und Scanner
Sonderzeichen im Passwort HP-Printer (HP LaserJet CP1525N) (2)

Frage von malika zum Thema Drucker und Scanner ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(15)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows Server
Kennwort vergessen bei Hyper vserver 2012r (21)

Frage von jensgebken zum Thema Windows Server ...

Router & Routing
Freigabe aus anderem Netz nicht erreichbar (21)

Frage von McLion zum Thema Router & Routing ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Festplatten, SSD, Raid
gelöst Raidcontroller funktioniert nur, wenn unter Legacy-Boot gestartet wird (14)

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