Кодировка символов WP7 WebControl
У меня есть этот маленький кусочек HTML
<b>OBNUBIL�,</b>
<abbr class="abbrev" title="persoană">pers.</abbr>
3 <i>obnubilează,</i>
<abbr class="abbrev" title="verb">vb.</abbr>
I. <abbr class="abbrev" title="reflexiv">Refl.</abbr>
(Rar; despre vedere, memorie) A se �ntuneca, a slăbi, a se umbri. Din
<abbr class="abbrev" title="limba latină">lat.</abbr>
<b>obnubilare,</b>
<abbr class="abbrev" title="limba franceză">fr.</abbr>
<b>obnubiler.</b>
который я хочу отобразить в веб-браузере на приложении Windows Phone, написанном на C#. Этот фрагмент HTML хранится в строке: str2.
Я использовал эту строку кода: webBrowser1.NavigateToString(str2)
, Это работает но Romanian diacritics (ă ,ș ,ț,�, � ,Ă,Ț ,�,�,Ș)
не показаны
Как изменить кодировку символов для WebControl с UTF-8 на ISO-8859-16 в Windows Phone?
private void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
if (e.Error != null)
{
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
// Showing the exact error message is useful for debugging. In a finalized application,
// output a friendly and applicable string to the user instead.
MessageBox.Show(e.Error.Message);
});
}
else
{
string textString = (string)e.Result;
string fixedString = "";
// This search returns the substring between two strings, so
// the first index is moved to the character just after the first string.
string defStart = "cuvânt\">";
string defEnds = "</span> <br/>";
textString = textString.Replace("\r", "").Replace("\n", "");
int first = textString.IndexOf(defStart) + defStart.Length;
int last = textString.LastIndexOf(defEnds);
string str2 =textString.Substring(first, last - first);
str2 = str2.Replace("–", " - ");
// Remove tab spaces
str2 = str2.Replace("\t", " ");
// Remove multiple white spaces from HTML
str2 = Regex.Replace(str2, "\\s+", " ");
//str2 = Regex.Replace(str2, "<[^>]+>", string.Empty);
//BannerTextBlock.Text=str2;
webBrowser1.NavigateToString(str2);
}
}
Я надеюсь, что кто-то понимает мою проблему и может мне помочь. Заранее спасибо!
1 ответ
Я просто помогу вам с моими знаниями в веб-среде:
если вы отображаете этот тип символа: "é", "î", "Ã", ... => данные были сохранены в UTF-8, и браузер думает, что ему приходится иметь дело с ISO.
если вы отображаете этот тип символа: " " => данные были сохранены в ISO, и браузер думает, что ему приходится иметь дело с UTF-8.
PS: извините за мой английский.
Надеюсь, я помогу тебе.