C言語のprintf
関数で使えるような書式をC#でも使いたいと思って簡単に調べてみました。
int型
サンプル
int value = 1234;
// 普通に表示
Console.WriteLine($"{value}");
// 8文字分のスペースに右揃えで表示
Console.WriteLine($"{value,8}");
// 8文字分のスペースに左揃えで表示
Console.WriteLine($"{value,-8}");
// 足りない部分は0で補って8桁で表示
Console.WriteLine($"{value:D8}");
実行結果
1234 1234 1234 00001234
サンプル – 16進表記
int value = 1234;
// 16進表記で表示
Console.WriteLine($"{value:X}");
// 8文字分のスペースに右揃えで表示
Console.WriteLine($"{value,8:X}");
// 8文字分のスペースに左揃えで表示
Console.WriteLine($"{value,-8:X}");
// 足りない部分は0で補って8桁の16進表記で表示
Console.WriteLine($"{value:X8}");
実行結果
4D2 4D2 4D2 000004D2
サンプル – 16進表記 その2
小文字の16進表記で表示したい場合はX
の代わりにx
を使います。
int value = 1234;
Console.WriteLine($"{value:x}");
Console.WriteLine($"{value,8:x}");
Console.WriteLine($"{value,-8:x}");
Console.WriteLine($"{value:x8}");
実行結果
4d2 4d2 4D2 000004d2
float型
サンプル
float value = 123.4f;
// 普通に小数点表示
Console.WriteLine($"{value:F}");
// 8文字分のスペースに右揃えで小数点表示
Console.WriteLine($"{value,8:F}");
// 8文字分のスペースに左揃えで小数点表示
Console.WriteLine($"{value,-8:F}");
// 小数点以下を8桁で表示
Console.WriteLine($"{value:F8}");
実行結果
123.40 123.40 123.40 123.40000000
※精度指定子がない場合はNumberFormatInfo.NumberDecimalDigits
の値によって小数点以下の桁数が決まるそうです。
リンク
$ – string interpolation – C# reference | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/interpolated
String interpolation in C# | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/string-interpolation
Standard numeric format strings | Microsoft Docs
https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings
関連記事
C#のcharを大文字・小文字に変換する方法
C#のstringを大文字・小文字に変換したい場合はToLower/ToUpperが使えます。
string s;
// 小文字に変換
s.ToLower();
// 大文字に変換
s.ToUpper();
そこで、charを大文字・小文字に変換したい場合に何か簡単な方法がないか調べてみたところChar.ToLower/Char.ToUpperというのが便利みたいです。
使...
C#で配列char[]をstringに変換する方法
C#でcharの配列をstringに変換する方法を調べてみたところ、次の2つが使い易そうな感じでした。
new stringを使う方法
char[] array = { 'a', 'b', 'c', 'd', 'e' };
string s = new string(array);
Console.WriteLine(s);
実行結界
abcde
stri...
正規表現で文字列を分割したい場合はRegex.Split
C#で正規表現で文字列を分割したい場合はRegex.Splitが便利です。使い方は次のような感じです。
数字で分割するサンプル
using System;
using System.Text.RegularExpressions;
public class Example1
{
static public void Main ()
{
string pattern ...
C#の文字列補完
string.Format
string.Formatを使うと、次のような感じで変数の値を文字列に変換して出力できます。
コード
string name = "abc";
int value = 123;
Debug.Log(string.Format("name={0}, value={1}", name, value));
出力
name=abc, value=...
C#で文字列の分割
C#ではSplitというメソッドを使うことで簡単に文字列の分割ができます。 使い方は次のような感じです。
コンマ「,」かハイフン「-」で分割
using System;
class Example1
{
static public void Main()
{
string str = "one,two-three";
char[] sep = { '...
C#で数値を文字列に変換したり文字列を数値に変換したりする方法
C#で数値を文字列に変換したり文字列を数値に変換したりする方法のまとめ。
数値 ⇒ 文字列の変換
数値から文字列への変換にはToString()が使えます。
サンプルコード
using System;
public class Example1
{
public static void Main()
{
int value1 = 123;
flo...