QLOOKアクセス解析

数値をn進数の文字列に変換

{変換したい変数}.ToString()

Convert.ToString({変換したい変数}, {n進数})


C#

int iNum = 9999;
double dNum = 123.45;
string text;

// 数値変数の文字列変換
text = iNum.ToString();         // "9999" 通常
text = iNum.ToString("d5");     // "09999" 連番
text = iNum.ToString("c");      // "\9999" お金
text = iNum.ToString("n");      // "9,999.00" 単位
text = dNum.ToString("f5");     // "123.45000" 小数五桁
text = dNum.ToString("e");      // "1.234500e+002" 小数五桁

// n進数文字列に変換
text = Convert.ToString(iNum, 2);   // "10011100001111" 2進数
text = Convert.ToString(iNum, 8);   // "23417" 8進数
text = Convert.ToString(iNum, 16);  // "270f" 16進数

VisualBasic

Dim iNum As Integer = 9999
Dim dNum As Double = 123.45
Dim text As String

'数値変数の文字列変換
text = iNum.ToString()          ' "9999" 通常
text = iNum.ToString("d5")      ' "09999" 連番
text = iNum.ToString("c")       ' "\9999" お金
text = iNum.ToString("n")       ' "9,999.00" 単位
text = dNum.ToString("f5")      ' "123.45000" 小数五桁
text = dNum.ToString("e")       ' "1.234500e+002" 小数五桁

' n進数文字列に変換
text = Convert.ToString(iNum, 2)   ' "10011100001111" 2進数
text = Convert.ToString(iNum, 8)   ' "23417" 8進数
text = Convert.ToString(iNum, 16)  ' "270f" 16進数

使用例

数値の文字列変換

XAMLコード

<UserControl x:Class="ConvertStringFromNumerCS.Page"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Width="400" Height="300">
    <Grid x:Name="LayoutRoot" Background="White">
        <Button Name="buttonConvert" Margin="0,30.5,23,0" Content="変換"
                HorizontalAlignment="Right" Width="102" Height="39"
                VerticalAlignment="Top" Click="Button_Click"/>        
        <TextBlock HorizontalAlignment="Left" Margin="26,41,0,0" Width="62"
                   Text="数値入力" Height="19" VerticalAlignment="Top"/>
        <TextBlock HorizontalAlignment="Left" Margin="26,145,0,0"
                   VerticalAlignment="Top"
                   Width="62" Height="19" Text="2進数"/>
        <TextBlock HorizontalAlignment="Left" Margin="26,0,0,103" Width="62"
                   Text="8進数" VerticalAlignment="Bottom" Height="24"/>
        <TextBlock HorizontalAlignment="Left" Margin="26,0,0,76"
                   VerticalAlignment="Bottom"
                   Width="62" Height="24" Text="10進数"/>
        <TextBlock HorizontalAlignment="Left" Margin="26,0,0,48" Width="62"
                   Text="16進数" VerticalAlignment="Bottom" Height="24"/>
        <TextBox Name="textBoxNum" Margin="92,40,150,0"
                 VerticalAlignment="Top"
                 Height="24" Text="" TextWrapping="Wrap"/>
        <TextBox Name="textBoxTwo" Margin="92,98,150,132" Text=""
                 TextWrapping="Wrap"
                 VerticalAlignment="Bottom" Height="24"/>               
        <TextBox Name="textBoxEight" Margin="92,0,150,106" Text=""
                 TextWrapping="Wrap"
                 VerticalAlignment="Bottom" Height="24"/>
        <TextBox Name="textBoxTen" Margin="92,0,150,80" Text=""
                 TextWrapping="Wrap"
                 VerticalAlignment="Bottom" Height="24"/>        
        <TextBox Name="textBoxSixteen" Margin="92,0,150,52" Text=""
                 TextWrapping="Wrap"
                 VerticalAlignment="Bottom" Height="24"/>
    </Grid>
</UserControl>

C#コード

private void Button_Click(object sender, RoutedEventArgs e)
{
    try
    {
        // 文字列を数値に変換
        int number = Convert.ToInt32(textBoxNum.Text);

        // 通常の文字列変換
        textBoxTen.Text = number.ToString();    

        // n進数の文字列変換
        textBoxTwo.Text = Convert.ToString(number, 2);
        textBoxEight.Text = Convert.ToString(number, 8);           
        textBoxSixteen.Text = Convert.ToString(number, 16);
    }
    catch
    {
        textBoxTwo.Text = "変換不可";
        textBoxEight.Text = "変換不可";
        textBoxTen.Text = "変換不可";
        textBoxSixteen.Text = "変換不可";
    }
}

VisualBasicコード

Private Sub Button_Click(ByVal sender As System.Object, _
        ByVal e As System.Windows.RoutedEventArgs)
    Try
        '文字列を数値に変換
        Dim number As Integer = Convert.ToInt32(textBoxNum.Text)

        '通常の文字列変換
        textBoxTen.Text = number.ToString()

        'n進数の文字列変換
        textBoxTwo.Text = Convert.ToString(number, 2)
        textBoxEight.Text = Convert.ToString(number, 8)
        textBoxSixteen.Text = Convert.ToString(number, 16)
    Catch ex As Exception
        textBoxTwo.Text = "変換不可"
        textBoxEight.Text = "変換不可"
        textBoxTen.Text = "変換不可"
        textBoxSixteen.Text = "変換不可"
    End Try
End Sub

ここからこのソースコードのダウンロードをすることができます。

C#版: http://birthmarch.web.fc2.com/program/csharp/ConvertStringFromNumerCS.zip

VB版: http://birthmarch.web.fc2.com/program/vb/ConvertStringFromNumberVB.zip


Microsoft Silverlight 2テクノロジ入門 (マイクロソフト公式解説書)
Microsoft Silverlight 2テクノロジ入門 (マイクロソフト公式解説書)株式会社セカンドファクトリー グローバルストラテジグループ 東 賢・玉城 えり子 株式会社ウイリング

日経BPソフトプレス 2008-08-26
売り上げランキング : 11627

Amazonで詳しく見る
by G-Tools

独習C# 第2版
独習C# 第2版NRIラーニングネットワーク株式会社 矢嶋 聡 株式会社テック・インデックス

翔泳社 2007-04-20
売り上げランキング : 83943
おすすめ平均star


Amazonで詳しく見る
by G-Tools

write:2008/10/31

トップページへ



トップページへ

メールはこちらへ



inserted by FC2 system