スライドショー

【C#入門】ToStringで数値や日付を文字列に変換する方法

ToStringメソッドって使ってますか?

ToStringメソッドを使うと数値や日付を指定した書式で文字列に変換することができます。

この記事では、ToStringメソッドについて

・ToStringメソッドとは
・数値を文字列に変換する方法
・日付を文字列に変換する方法

という基本的な内容から、

・ToStringをオーバーライドする方法

など応用的な内容についても解説していきます。

今回はToStringメソッドについて、使い方をわかりやすく解説します!

ToStringメソッドとは

ToStringメソッドは変数やオブジェクトを文字列に変換するときに使います。

ToStringメソッドの引数には文字列に変換するときの書式を指定します。

書式の指定については、こちらで詳しく解説していますので、ぜひ参考にしてください。

【C#入門】String.Formatで書式指定子の使い方(0埋め、桁数指定など)
更新日 : 2019年4月23日

数値を文字列に変換する方法

それでは数値を文字列に変換する方法についてサンプルコードでみていきましょう。

using System;

namespace Sample
{
  class Sample
  {
    static void Main()
    {
      double num = 12.3456;
      Console.WriteLine(num.ToString("#.##"));
      
      Console.ReadKey();
    }
  }
}

実行結果:

12.35

このサンプルコードでは、ToStringメソッドを使ってdouble型変数numを文字列に変換しています。

ToStringメソッドの引数では、小数点第2位までで四捨五入されるように書式を指定しています。

日付を文字列に変換する方法

ToStringメソッドでDateTime(日付)型のオブジェクトを文字列に変換することもできます。

using System;

namespace Sample
{
  class Sample
  {
    static void Main()
    {
      DateTime dt = new DateTime(2018, 2, 1);
      Console.WriteLine(dt.ToString("yyyy/MM/dd"));
      
      Console.ReadKey();
    }
  }
}

実行結果:

2018/02/01

このサンプルコードでは、ToStringメソッドを使ってDateTime型オブジェクトdtを文字列に変換しています。

ToStringメソッドの引数では、日時の書式を指定しています。

ToStringをオーバーライドする方法

これまではToStringメソッドを使って数値や日付を文字列に変換してきました。

このToStringメソッドは自作したクラスでオーバーライドして使うこともできます。

オーバーライドとはメソッドの名称、引数、戻り値はそのままで、処理の内容を再定義することです。

サンプルコードで確認しましょう。

using System;

namespace Sample
{
 class test 
 {
   private double num;
   
   public test(double num) {
     this.num = num;
   }
   
   public override string ToString() {
     return String.Format("numは{0:#.##}です", this.num);
   }
 }
 
  class Sample
  {
    static void Main()
    {
      test t = new test(12.3456);
      Console.WriteLine(t.ToString());
      
      Console.ReadKey();
    }
  }
}

実行結果:

numは12.35です

このサンプルコードでは、testクラスを作成しToStringメソッドをオーバーライドしています。

このようにToStringメソッドはカスタマイズすることもできます。

まとめ

ここでは、ToStringメソッドについて説明しました。

ToStringメソッドは書式を指定して数値や日付データを文字列に変換することができます。

また、自作のクラスでオーバーライドすることで文字列への変換をカスタマイズすることもできます。

使いこなすことができるように、この記事を何度も参考にして下さいね!

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

長野 透

長野 透

熊本在住のフリープログラマ兼ライターです。C/C++/C#、Java、Python、HTML/CSS、PHPを使ってプログラミングをしています。専門は画像処理で最近は機械学習、ディープラーニングにはまっています。幅広くやってきた経験を活かしてポイントをわかりやすくお伝えしようと思います。
お問合せはこちらでも受け付けています。
[email protected]

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説