問題タブ [character-encoding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
character-encoding - 中国語の文字を SQLExpress テキスト フィールドに挿入するにはどうすればよいですか?
中国語の文字を SQLExpress テキスト フィールドに挿入するにはどうすればよいですか? VS 2008 から SQL Express を使用しています。作成したインポート アプリを使用するか、Visual Studio 内のデータ ビューから漢字を貼り付けて漢字を追加すると、疑問符になってしまいます。
perl - 文字列の文字セットを決定するにはどうすればよいですか?
いくつかの異なる言語のファイルがいくつかあります。それらはすべてUTF-8でエンコードされていると思っていましたが、今はよくわかりません。きれいに見える文字もあれば、そうでない文字もあります。文字列を分割して文字セットを特定する方法はありますか? おそらく、空白で分割してから、各単語を識別しますか? 最後に、あるセットの文字を UTF-8 に変換する簡単な方法はありますか?
asp.net - .Nethttpハンドラーでauumlautをエンコードする際の問題
リクエストをJavaWebサービスに渡すASP.Net(2.0)HTTPハンドラーに送信するJavaScriptリクエストがあります。このシステムでは、アクセント付きの特殊文字などの特殊文字は正しく渡されません。
例えば
- 人間の入力:
Düsseldorf
- へのJavaScript非同期リクエストになり
http://site/serviceproxy.ashx?q=D%FCsseldorf
ます。これは、私が知る限り、ISO-8859-1およびUTF-8で有効です。(UTF-8で%c3%bcでない限り) HttpContext.Current.Request.QueryString.Get("q")
D�sseldorf
トラブルが始まるところから戻ります。- しかし、(a'?')を
HttpUtility.UrlEncode(HttpContext.Current.Request.QueryString.Get("q"), Encoding.GetEncoding("ISO-8859-1"))
返しますD%3fsseldorf
- と
HttpUtility.UrlEncode(HttpContext.Current.Request.QueryString.Get("q"), Encoding.UTF8)
戻りますD%ef%bfsseldorf
そのため、値が正しくデコードまたは再エンコードされて、Javaサービスに渡されません。
- 通知
HttpContext.Current.Request.Url.Query
は?q=D%FCsseldorf&output=json&from=1&to=10
HttpContext.Current.Request.QueryString.ToString()
ですがq=D%ufffdsseldorf&output=json&from=1&to=10
HttpContext
これはなぜですか。また、次のようなリクエストヘッダーを尊重するように指示するにはどうすればよいですか。
QueryString
UTF-8文字セットを使用してURLをデコードします。
補遺:答えが指摘しているように、問題はエンコードほどデコードにありません。JavaScriptでの使用escape()
は、UTF-8に従ってエスケープしませんが、使用はエスケープencodeURIComponent()
します。
php - ウェブサイトから価格を奪う
PHPと正規表現を使用してWebページから価格を取得しようとしています。価格は£123.12または$123.12(つまり、ポンドまたはドル)の形式になります。
libcurlを使用してコンテンツを読み込んでいます。次に、その出力はになりpreg_match_all
ます。したがって、次のようになります。
これまでのところ簡単です。問題は、ページに価格がある場合でも、PHPがまったく一致していないことです。'£'文字に問題があることに絞り込みました-PHPはそれを好まないようです。
これは文字セットの問題かもしれないと思います。しかし、私が何をしても、PHPをそれに合わせることができないようです!誰かアイデアはありますか?
(編集:同じ正規表現とページコンテンツを使用して正規表現テストツールを使用しようとすると、正常に動作することに注意してください)
jquery - ヘッダーが設定されていない場合の返信のjQuery $.get()文字セット?
最近、最小限の HTTP CGI サーバーが組み込まれた Winamp Web ソング リクエスター プラグインである Winamp ソング リクエスターをインストールしました。
プラグインが行うことは、Web サーバーを実行し、要求に応じて実際のデータ (プレイリスト、要求キュー、曲の残り時間など) に置き換えるいくつかの特別な変数を含む html ページを提供することです。
これは jQuery を学ぶための楽しくて良いプロジェクトだと思ったので、独自の js コードを接続して、プラグインから提供された Web サイトを置き換え、修正し、ajaxify し始めましたが、文字エンコーディングの問題に遭遇しました。
このページには、プレイリスト内のすべての曲へのリンクが表示されます。リンクの 1 つをクリックすると、独自の jQuery クリック関数を接続しました。そのため、曲をリクエストするときにページ全体をリロードする代わりに、$.get($(this).attr('href', function(response) {... code ...})
replaceWith を使用して、現在のキューを新しく生成されたキューに置き換え、リクエストをその場で追加します。現在再生中および検索時に同じことを表示/更新して、すべてがバックグラウンドでフェッチされ、追加されたアニメーションでその場で置き換えられるようにします。
すべての jQuery/Ajax は問題なく動作しますが、大きな問題は文字セットとキュー/プレイリストの曲名にあります。名前の特殊文字 (åäöé など) はまったく機能しません。
プラグインは iso-8859-1/latin1 にすべてを出力し、マークアップのメタ タグは、このページが latin1 であることをブラウザーに伝えます。ブラウザでの通常のページ更新では、これはうまく機能し、特殊文字は通常どおり表示されます。しかし、jQuery を使用$.get()
してその場でコード ブロックを置き換えると、特殊文字は ? としてのみ表示されます。
$.get()
問題は、jQuery のデフォルトが、ヘッダーに別の指示がない場合、応答が UTF-8であると信じていることにあると思います。プラグインは、encoding/charset のヘッダーをまったく設定しません。バックエンドとどのヘッダーが設定されるかをまったく制御できないため、これを変更することはできません。
プラグインからの応答で得られる唯一のヘッダーは次のとおりです。
サーバー: WinampServer
接続: 閉じる
コンテンツ タイプ: text/html
私の問題を理解していただければ幸いです。バックエンドをまったく制御できず、処理する必要があるのは生成された HTML だけであるページがあります。応答のヘッダーを変更または追加できません。特殊文字のエンコーディングが壊れないように、応答が実際には UTF-8 ではなく latin1 であることを jQuery に伝える必要があります。jQuerys ajaxSetup で scriptCharset: 'iso-8859-1' を試しましたが、それはタイプ script/json でのみ機能し、HTML 応答で作業しています。
これが可能かどうか、または考えられる他の回避策はありますか?
encoding - エンコーディングの問題クラシックASP
従来のASPに問題があります。でデータを送信すると、エンコードが間違っていますXMLHttp.send
。応答はPDFファイルですが、「ÆØÅ」が間違っています。たとえば、「Ø」は「øy」と読み取られます。UTF-8からISO-8859-1への変換ミスのようですが、今はISO-8859-1になっているはずです。<%@CODEPAGE="28591"%>
ページの上部にあり、ISO-8859-1
XMLファイルのエンコードとして、ファイルが有効なISO-8859-1であることを確認しました。このデータを送信するサーバーにアクセスできませんが、同じロジックを使用するVB6プログラムで修正しました。
また、同じロジックを使用するC#プログラムでは
しかし、ASPクラシックでは、文字列のエンコーディングをISO-8859-1に変更する方法を見つけるためにいくつかの助けが必要です。
c++ - C++ ソース コードでの Unicode の使用
C++ ソース コードの標準エンコーディングは何ですか? C++標準はこれについて何か言っていますか? C++ ソースを Unicode で記述できますか?
たとえば、コメントに漢字などの非 ASCII 文字を使用できますか? もしそうなら、完全な Unicode は許可されていますか、それとも Unicode のサブセットだけですか? (たとえば、その 16 ビットの最初のページまたはそれが呼ばれるもの。)
さらに、文字列に Unicode を使用できますか? 例えば:
php - phpmyadminは、文字セットと照合をutf8_unicode_ciに設定した場合でも、日本語の文字を疑問符の束として表示します
okee、私はここで見つけたすべての指示に従い
、ページにあらゆる種類の多言語文字を表示できました...
問題は、phpmyadminで、日本語の文字が疑問符に置き換えられている???? ???
ことです。データベースの照合に問題があると思いますが、ここでそれを確認したかっただけです。
このデータベースは以前にデフォルトの照合で設定されていましたがlatin_swedish_ci
、すでに多くのデータがあります。ここで、特殊文字のサポートを必要とするいくつかのテーブルを追加する必要があったため、データベースの照合をに設定できませんでしたutf8
。私の解決策は、utf8
そのようなサポートを必要とするテーブルと、特殊文字が含まれると予想される特定の列でのみ使用することでした。
しかし、それでもphpmyadminはそれらをとして表示しました????
。
私が持っているもう1つの質問は、これらのフィールドを検索できるかどうかです。
フィールドに日本語の文字が含まれていsayuri
て、キーワードとして入力した場合、その音節に相当する日本語の文字は英語で発音されますか?
html - 逆さまのキャレット文字はありますか?
従来の ASP ページを多数維持する必要があり、その多くは、並べ替え機能がまったくない表形式のデータを含んでいます。元の開発者がデータベース クエリで使用した順序が何であれ、あなたが行き詰まっているものです。
これらのページの束にいくつかの基本的な並べ替えを追加したいのですが、すべてクライアント側で JavaScript を使用して実行しています。特定の列の特定のテーブルを特定の方向に並べ替えるための基本的なスクリプトは既に作成しており、ここで従う特定の規則によってテーブルが制限されている限り、うまく機能します。
UI に対してやりたいことは、キャレット文字 ( ^
) を使用して並べ替え方向を示すことです。キャレットの正反対の特殊文字はありますか? 手紙v
はそれを完全にカットしません。または、使用できる別の文字の組み合わせはありますか?
asp.net - 国際テキストの表示
GridView や Repeater などのコントロールを持つ ASP.net ページを作成しようとしています。このページに表示されるデータは unicode または Utf-8 のいずれかです。ヘブライ語や一部のアジア言語などの言語を表示するのに本当に苦労しています。
ASP.net ページに任意の種類の言語を表示するにはどうすればよいですか?? メタ タグ オプションと <@ Page> オプションを使用してエンコーディングを設定しようとしましたが、うまくいきません。何が足りないの??