ホームページ > バックエンド開発 > C++ > `Boolean.ToString()` が 'true' と 'false' ではなく 'True' と 'False' を返すのはなぜですか?

`Boolean.ToString()` が 'true' と 'false' ではなく 'True' と 'False' を返すのはなぜですか?

Linda Hamilton
リリース: 2025-01-04 02:38:43
オリジナル
858 人が閲覧しました

Why Does `Boolean.ToString()` Return

Boolean.ToString() が「True」を返し、「true」ではない理由

.NET の Boolean.ToString() メソッドは次の値を返しますブール値オブジェクトの値に基づいて「True」または「False」のいずれか。この大文字の使用の理由は不明であり、長年にわたって憶測の対象となってきました。

MSDN の説明

MSDN によると、Boolean.ToString() は定数を返します。フィールド TrueString または FalseString ではなく、True」または「False」。これは、XML では大文字と小文字が区別され、XML 仕様では「true」と「false」が有効なブール値として認識されるためです。 MSDN では、返された文字列を XML ファイルに書き込む前に String.ToLower() メソッドを使用して小文字に変換することを推奨しています。

Hacky Solutions

この大文字の使用により、戻り値が小文字を区別するコンテキストと互換性がないシナリオである可能性があります。この問題に対するハックな解決策の 1 つは、XML などの特定の使用例に合わせてブール値を小文字に変換する拡張メソッドを作成することです。例:

internal static string ToXmlString(this bool b)
{
    return b.ToString().ToLower();
}
ログイン後にコピー

このメソッドはスタックに新しい関数を追加しますが、複数の場所で文字列を手動で小文字に変換する必要がなくなります。

代替メソッド

Boolean.ToString(IFormatProvider) メソッドも存在しますが、その備考セクションには次のように記載されています。 IFormatProvider パラメーターはメソッドの実行には関与せず、カルチャ固有の設定は反映されません。したがって、この代替方法にはカスタマイズ オプションがありません。

以上が`Boolean.ToString()` が 'true' と 'false' ではなく 'True' と 'False' を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート