これはよくある質問ですが、私の問題の答えは見つかりませんでした。私は現在、HTMLエディターで作業しています。ボタンを1回クリックするだけで、Webブラウザからテキストビューに変更できます。もう一度ボタンを押すと、WebブラウザにHTMLコードが再び表示されます。しかし、私はまた、テキストモードでコードを手動で変更することができますし、私がそうした場合、コードは間違って表示されます。私はこのような何か書く場合:たとえばHTML:エンコードが間違っています
:A- A「AOE
ÖÄÜ
を、私は何かを変更するには、この表示されます
私はすでにこれを試しました:
byte[] bytes = Encoding.Default.GetBytes(mytextbox.Text);
string htmlcode = Encoding.UTF8.GetString(bytes);
と、この:
HttpUtility.HtmlDecode
それdidntの仕事。あなたが私を助けることを願っています。
EDIT:
私はMSHTMLで自分のコードを編集することができますWPFのWebBrowserコントロールを持っています。私はこのような何か書く場合:
ÖÄU
を、私はこのコードをテキストビューに変更します。
mytextbox.Text = doc.body.outerHTML;
テキストボックスに示されているHTMLコード:
<BODY>Ö Ä Ü</BODY>
これを編集したい場合は、テキストボックスをReadOnlyにします。別のボタンを押す必要があります。私は、テキストを編集して、このコードで、現在再びたBrowserViewに変更する場合:
if (myWebBrowser != null)
{
myWebBrowser.Dispose();
browsergrid.Children.Remove(myWebBrowser);
}
if (doc != null)
{
doc.clear();
}
myWebBrowser = new WebBrowser();
browsergrid.Children.Add(myWebBrowser);
myWebBrowser.NavigateToString(mytextbox.Text);
doc = myWebBrowser.Document as HTMLDocument;
doc.designMode = "On";
ブラウザは、この表示されます。
A- A「AOE
HTMLコードを投稿できますか? – Raptor
あなたは間違いなく、*間違いなく*そのコードを使用する必要があります。どこでも 'Encoding.Default'を使うべきではありません。さて、あなたは問題の診断をどれだけ取得しましたか?どのようにHTMLを表示していますか? –
これはエンコードの仕組みではありません。 1つのエンコーディングでバイトを取得し、UTF8として解釈することはできません。 –