0

次のコードを使用して、Windows フォーム アプリケーションでユーロ記号を印刷しようとしています。他のすべての文字と記号で機能しますが、ユーロ (€) は表示されません。

string input = ((char)128).ToString();
Font f = new System.Drawing.Font("Arial", 12f);
Graphics gr = this.CreateGraphics();
gr.DrawString(input, f, Brushes.Black, new PointF(0, 0));

128 - ユーロ記号の 10 進数です 誰か助けてくれませんか?

4

2 に答える 2

7

128 は、ユーロ記号を表す正しい値ではありません。多分試してください:

string input = ((char)0x20AC).ToString();

U+20ACユーロ記号の Unicode コードポイントであるためです。

于 2012-12-10T12:02:08.667 に答える
1

以下のコードを使用することで、Unicode を使用せずにユーロ記号を印刷することができました。

String input = Encoding.Default.GetString(new byte[] { 128 });
Font f = new System.Drawing.Font("Arial", 12f);
Graphics gr = this.CreateGraphics();
gr.DrawString(input, f, Brushes.Black, new PointF(0, 0));

これは誰かを助けるかもしれません。

于 2012-12-12T03:25:20.630 に答える