HTML-Sonderzeichen in ASCII-Sonderzeichen konvertieren
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
, was aber auch komisch ist, da ja das "л" zweimal vorkommt...
Wenn man Diese Zeichenfolge in einer Gogglesuche verwendet, kommt das raus:
Ist mir aber erstmals egal, sorry, denn im Russischen gibt es sowohl, als auch 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
Liegt es vielleicht daran, dass ich am "New WebClient" die Encoding auf
gestellt habe? Habe es aner schon mit ASCII versucht; geht auch nicht...
// EDIT
Quelltext des Programms:
Wie mach ich das? Nehme auch gern eine DLL, wenn nötig...
Freundliche Grüße Chris
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:
Алло"
привет (Priviet)
Wenn man Diese Zeichenfolge in einer Gogglesuche verwendet, kommt das raus:
Алло
Ist mir aber erstmals egal, sorry, denn im Russischen gibt es sowohl
привет
Алло
Алло"
Алло
Gibt es i-eine Möglichkeit, das umzuwandeln?
In CSharp geht es ja so
System.Web.HttpUtility.HtmlDecode(text)
Liegt es vielleicht daran, dass ich am "New WebClient" die Encoding auf
System.Text.Encoding.Default
// EDIT
Quelltext des Programms:
Public Class Form1
Dim temp As String, eingang As String = "de", ausgang As String = "en"
Public Function TranslateText(ByVal TextToTranslate As String, ByVal lngInput As String, ByVal lngOutput As String) As String
Dim result As String
Dim url As String = [String].Format("http://www.google.com/translate_t?hl=en&ie=UTF8&text={0}&langpair={1}|{2}", TextToTranslate, lngInput, lngOutput)
Dim webClient As New Net.WebClient()
webClient.Encoding = System.Text.Encoding.Default
result = webClient.DownloadString(url)
Dim match As String = "id=result_box"
Dim i As Integer = result.IndexOf(match) + 20
Dim f As Integer = result.IndexOf(match) + 500
result = Mid(result, i, f)
result = Mid(result, 1, result.IndexOf("</div>"))
result = result.Replace("<span title=", "")
result = result.Replace("</span>", "")
result = result.Replace("'", "'")
result = result.Substring(result.LastIndexOf(">") + 1)
Return result
End Function
Private Sub Input_Box_TextChanged() Handles Input_Box.TextChanged
Select Case ComboBox1.SelectedItem
Case "Deutsch"
eingang = "de"
Case "Englisch"
eingang = "en"
Case "Französisch"
eingang = "fr"
End Select
Select Case ComboBox2.SelectedItem
Case "Deutsch"
ausgang = "de"
Case "Englisch"
ausgang = "en"
Case "Französisch"
ausgang = "fr"
End Select
Output_Box.Text = TranslateText(Input_Box.Text, eingang, ausgang)
End Sub
End Class
Wie mach ich das? Nehme auch gern eine DLL, wenn nötig...
Freundliche Grüße Chris
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 193039
Url: https://administrator.de/contentid/193039
Ausgedruckt am: 16.11.2024 um 01:11 Uhr
6 Kommentare
Neuester Kommentar
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
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.
Aber mit deinem
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.
Hallo visualbasic!
Die dezimalen Zeichencodes (Алло) aus dem kyrillischen Zeichensatz entsprechem dem Wort 'Алло'
Gruß Dieter
Die dezimalen Zeichencodes (Алло) aus dem kyrillischen Zeichensatz entsprechem dem Wort 'Алло'
Gruß Dieter