問題タブ [unicode]

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.

0 投票する
3 に答える
3410 参照

sql-server-2005 - SQL Server 2005 / XMLストアドプロシージャ-UnicodeからASCIIへ?(例外0xc00ce508)

ここにMSSQL2005ストアドプロシージャがあります。これは、XMLメッセージを入力として受け取り、その内容をテーブルに格納することになっています。delphiバックエンドアプリケーションがUnicodeを処理できなかったため、テーブルフィールドはvarcharsです。現在、着信するメッセージはISO-8859-1でエンコードされています。128を超える標準セット(この場合、フィンランド語の不可欠な部分であるÄÖäö)を超える文字が含まれるまで、すべて問題ありません。これにより、DBサーバーは例外0xc00ce508を発生させます。データベースのデフォルト、およびテーブルとフィールドの照合はlatin1に設定されます。これは、ISO-8859-1と同じである必要があります。

XMLメッセージは、次のようにXMLサブシステムを使用して解析されます。

以前は、ストアドプロシージャは入力にnvarcharを使用していましたが、それが古いバックエンドアプリケーション(Delphi 5 + ODBC)で問題を引き起こしたため、フィールドをvarcharに切り替える必要があり、その時点ですべてが壊れました。

また、最初にnvarcharを取り込んでvarcharに変換してみましたが、結果は同じです。

0 投票する
2 に答える
3103 参照

winapi - GetPrivateProfileString オディティ

.NET から kernel32 で GetPrivateProfileString と GetPrivateProfileSection を呼び出すことをいじっていたところ、理解できない奇妙なことに遭遇しました。

この呪文から始めましょう:

lpApplicationName (セクション) を渡し、lpKeyName も lpDefault も渡さない場合、そのセクションのすべてのキーを取得する必要があり、50% の確率で取得します。

ini ファイルの lpApplicationName が最初の行から始まる場合、バッファーは何も返しません。ファイルの 2 行目に lpApplicationName stats がある場合、期待値が返されます。

最初は Declare で W 版と Unicode を使用する問題だと思っていましたが、それらを変更しても効果がないようです。

私は何が欠けていますか?

0 投票する
7 に答える
4636 参照

delphi - Delphi 2009 + Unicode + 文字サイズ

私は Delphi 2009 を入手したばかりで、以前に、Unicode 文字列への切り替えのために必要になる可能性のある変更に関する記事をいくつか読みました。ほとんどの場合、sizeof(char) はもはや 1 であるとは保証されていません。しかし、なぜこれは文字列操作に関して興味深いのでしょうか?

たとえば、AnsiString:='Test' を使用し、String (現在は Unicode) で同じことを行うと、両方のケースで正しい Length() = 4 が得られます。テストしていなくても、他のすべての文字列操作関数は同じように動作し、引数が Unicode 文字列かそれ以外かを内部的に決定していると確信しています。

文字列操作を行う場合、char の実際のサイズが重要になるのはなぜですか? (もちろん、文字列を文字列として使用し、他のデータを保存しない場合)

助けてくれてありがとう!ホルガー

0 投票する
7 に答える
58102 参照

pdf - PDF形式のUnicode

私のプログラムは、要求に応じて比較的単純なPDFドキュメントを生成しますが、漢字や奇妙な数学記号などのUnicode文字に問題があります。通常の文字列をPDFで書き込むには、角かっこで囲みます。

8進コードで文字をエスケープするオプションもあります。

しかし、これは最大512文字になります。上位の文字をどのようにエンコードまたはエスケープしますか?バイトストリームと16進エンコードされた文字列への参照を見たことがありますが、実際にそれを行う方法を教えてくれる参照はありません。


編集:あるいは、私のために仕事をしてくれる良いJavaPDFライブラリを教えてください。私が現在使用しているのはgnujpdfのバージョンです(元の作者はAWOLになっているように見えるので、いくつかのバグを修正しました)。これにより、AWTグラフィックスインターフェイスに対してプログラミングできます。同じ。

代替案は、HTML-> PDFか、HTMLに非常によく似た段落とボックスに基づくプログラムモデルのいずれかであるように思われます。iTextは後者の例です。これは私の既存のコードを書き直すことを意味します、そして私はそれらが私にレイアウトにおいて同じ柔軟性を与えるとは確信していません。


編集2:以前は気づいていませんでしたが、iTextライブラリにはGraphics2D APIがあり、Unicodeを完全に処理しているように見えるので、これを使用します。尋ねられた質問に対する答えではありませんが、それは私にとって問題を解決します。


編集3: iTextは私にとってうまく機能しています。レッスンは、無意味に難しいと思われる何かに直面したときに、あなたよりもそれについてもっと知っている誰かを探すことだと思います。

0 投票する
6 に答える
14173 参照

unicode - UTF-8、UTF-16、UTF-32では格納できる文字数に違いはありますか?

わかった。これは典型的な「なぜ彼はググったり、www.unicode.orgに行って調べたりしなかったのか?」のように見えることはわかっています。質問ですが、そのような単純な質問の場合、両方の情報源を確認した後でも答えはわかりません。

これら 3 つのエンコーディング システムはすべて Unicode 文字をすべてサポートしていると確信していますが、プレゼンテーションでそれを主張する前に確認する必要があります。

おまけの質問: これらのエンコーディングは、拡張してサポートできる文字数に違いがありますか?

0 投票する
8 に答える
2690 参照

c++ - UTF-8 に対して安全なコードをどのように記述しますか?

ASCII 文字セット用に開発された一連のアプリケーションがあります。現在、アイスランドにインストールしようとしていますが、アイスランドの文字が台無しになるという問題が発生しています。

私たちは問題に取り組んでいますが、疑問に思っていました.8ビット文字用に設計され、UTF-8データが与えられたときに適切に動作するC++コードを書くための良い「ガイド」はありますか?

誰もが Unicode 標準全体を読むことは期待できませんが、より理解しやすいものがある場合は、チームと共有して、これらの問題に再び遭遇しないようにしたいと思います.

wchar_t またはその他の文字列表現を使用するようにすべてのアプリケーションを書き直すことは、現時点では実行できません。また、これらのアプリケーションはネットワークを介して 8 ビット文字を使用するサーバーやデバイスと通信するため、内部で Unicode を使用したとしても、境界での変換に問題が残ることにも注意してください。ほとんどの場合、これらのアプリケーションはデータを渡すだけです。テキストをあちこちにコピーする以外の方法でテキストを「処理」することはありません。

使用するオペレーティング システムは、Windows と Linux です。std::string と単純な古い C 文字列を使用します。(そして、設計上の決定を擁護するように私に頼まないでください。私は混乱を正す手助けをしようとしているだけです。)


提案されたもののリストは次のとおりです。

0 投票する
3 に答える
2641 参照

unicode - vbscriptファイルに2バイト文字を入力します

→(&rarr)をANSIVBScriptファイルに入力できる記号に変換する必要があります。正規表現を使用して、選択した一連のhtmlcodeを実際の2バイト記号に変換するスクリプトを作成しています。多くの言語は「\0x8594;」を使用してこれを実現します...VBScriptの同等のものは何ですか?

0 投票する
5 に答える
69916 参照

c# - Unicode 文字を対応する ASCII 文字に変換する方法

問題は次のとおりです。

C# では、従来の ACCESS データベースから情報を取得しています。.NET は、コンテンツを私に渡す前に、データベースのコンテンツ (この問題の場合は文字列) を Unicode に変換します。

この Unicode 文字列を ASCII 文字列に戻すにはどうすればよいですか?


Edit
Unicode char 710 は実際には MODIFIER LETTER CIRCUMFLEX ACCENT です。もう少し正確な問題は次のとおりです。


これが私が試したことです(これが機能しなかった理由がわかりました...):

しかし、これは 94 にはなりませんが、値が 63 のバイトになります...
これは新しい試行ですが、それでも機能しません:


解決策正しい方向を示してくれたcsgerobzlm
の 両方に感謝します。ここで問題を解決しました。

0 投票する
13 に答える
71972 参照

windows - 「tree /f /a」の結果を Unicode をサポートするテキストファイルに保存する

Windows コマンドラインで tree コマンドを使用して、ディレクトリの内容を一覧表示するテキスト ファイルを生成しようとしていますが、出力をパイプすると、Unicode 文字が詰まってしまいます。

これが私が使用しているコマンドです:

コンソール ウィンドウの結果は問題ありません。

しかし、テキストファイルはダメです:

どうすればこれを修正できますか? テキスト ファイルは、コンソール ウィンドウの出力とまったく同じであることが理想的です。

/U スイッチを使用してコマンド ラインを実行するという Chris Jester-Young の提案 (何が起こったのか、Chris は削除しましたか?) を試してみました。VS2008 とメモ帳の両方でファイルを開こうとしましたが、どちらも同じ間違った文字が表示されます。

0 投票する
2 に答える
2090 参照

java - Java、Unicode、およびフォント

私は Java のドキュメントを見て、特定のフォント (Monospace など) を使用した国際文字に対する Java のサポートに関する情報をネットで探しましたが、明確な具体的な答えを得ることができませんでした。

Java 1.4 と Java 1.5/1.6 の間で変更がありました。たとえば、Java 1.4 で JTextArea のフォントを Monospace に設定すると、外部文字を処理できなくなります (代わりに四角形を取得します) が、Java 1.5/1.6 では問題なく動作するようです。

これらの違いや改善されたサポートはどこかに明確に文書化されていますか?

ありがとう