フッターコンテンツにスキップ
.NETヘルプ

Parse String to Int C#(開発者向けの動作方法)

データ型の変換はプログラミングの基本概念であり、C#でプログラミングする際には最も一般的なタスクの一つとして、数値の文字列表現を整数に変換することが挙げられます。 このプロセスは、ユーザー入力や外部ソースからのデータを計算やその他の操作のために数値形式に変換する必要がある多くのアプリケーションで有用です。

このチュートリアルでは、C#で提供されている文字列を整数に変換するさまざまな方法を探ります。 また、IronPDFライブラリのホームページも探索します。

文字列変数を整数に変換する基本

Convert.ToInt32Int32.Parseメソッドは、文字列の値を整数値に変換するためのC#の標準的なツールです。 これらの関数は、入力文字列の数値を解釈し、それを整数に変換するように設計されています。 ただし、これらのメソッドは文字列が正しい形式でない場合には例外を投げることがあり、これらのツールを使用する上で例外処理が重要な側面となります。

Int32.Parseメソッドの使用

Int32.Parseメソッドは、有効な数値文字列を直接整数に変換します。 このメソッドは文字列が有効な数値形式でなければならず、 そうでない場合はFormatExceptionを投げます。 文字列が有効な数値であることが確かめられている場合に、このメソッドはシンプルです。 例えば:

public static string inputString = "123";
public static int result = int.Parse(inputString);
Console.WriteLine(result);
public static string inputString = "123";
public static int result = int.Parse(inputString);
Console.WriteLine(result);
Public Shared inputString As String = "123"
Public Shared result As Integer = Integer.Parse(inputString)
Console.WriteLine(result)
$vbLabelText   $csharpLabel

上記のコードでは、inputStringには有効な数値が含まれており、Parseメソッドがそれを整数123に変換します。ただし、inputStringに非数値文字が含まれていたり空文字列の場合、Parseを使用するとFormatExceptionArgumentNullExceptionを引き起こします。

Convert.ToInt32メソッドの使用

文字列を整数に変換するもう一つの方法はConvert.ToInt32です。 このメソッドはInt32.Parseと似ていますが、もう少し柔軟性があります。 それはnullおよび空の文字列を例外を投げずにゼロのデフォルト値を返すことで処理します。 それを使う方法は次の通りです:

public static string inputString = null;
public static int result = Convert.ToInt32(inputString);
Console.WriteLine(result);
public static string inputString = null;
public static int result = Convert.ToInt32(inputString);
Console.WriteLine(result);
Public Shared inputString As String = Nothing
Public Shared result As Integer = Convert.ToInt32(inputString)
Console.WriteLine(result)
$vbLabelText   $csharpLabel

このメソッドは例外を発生させずにinputStringを0に変換し、正しく初期化されない可能性のある変数に対してより安全です。

Int32.TryParseを用いた高度な技術

特に信頼できないユーザー入力を扱う際の変換プロセスをよりよく制御するためには、Int32.TryParseが好まれる方法です。 このメソッドは数値文字列のパースを試み、文字列を整数に変換するTryParseメソッドが成功したかどうかを示すブール値を返します。 それは変換された整数を返すためにoutパラメータを使用します。

Int32.TryParseの使用例

ここではInt32.TryParseメソッドを使用して、無効な文字列入力に柔軟に対処しつつ、文字列入力を安全に整数値に変換する方法を示します:

string inputString = "abc123";
int num;
bool conversionSucceeded = int.TryParse(inputString, out num);
if (conversionSucceeded)
{
    Console.WriteLine("Successfully parsed: " + num);
}
else
{
    Console.WriteLine("Conversion failed. Provided string is not a valid integer.");
}
string inputString = "abc123";
int num;
bool conversionSucceeded = int.TryParse(inputString, out num);
if (conversionSucceeded)
{
    Console.WriteLine("Successfully parsed: " + num);
}
else
{
    Console.WriteLine("Conversion failed. Provided string is not a valid integer.");
}
Dim inputString As String = "abc123"
Dim num As Integer = Nothing
Dim conversionSucceeded As Boolean = Integer.TryParse(inputString, num)
If conversionSucceeded Then
	Console.WriteLine("Successfully parsed: " & num)
Else
	Console.WriteLine("Conversion failed. Provided string is not a valid integer.")
End If
$vbLabelText   $csharpLabel

この例では、Int32.TryParseがfalseを返します。なぜならinputStringが有効な整数ではないからです。 outパラメータnum0のままで、プログラムは例外を発生させずに変換の失敗をユーザーに通知します。

IronPDFライブラリの紹介

IronPDF概要セクションは、.NETフレームワークを使用する開発者向けにPDF操作を簡素化するよう設計された強力なC#ライブラリです。 それはHTML、CSS、JavaScript、および画像から直接PDFドキュメントを作成、編集、管理することができます。 IronPDFの主な機能はHTMLコンテンツを直接PDFに変換する能力です。

これにはウェブページ全体やHTML文字列の変換を含み、非常に柔軟です。 IronPDFは強力でありながら統合が簡単であり、さまざまな開発環境をサポートします。

コード例

これは、文字列を整数にパースしそれをPDFに表示するためにIronPDFによるPDF生成とC#コードを組み合わせた単純な例です。 この例では、数値文字列を整数に変換し、その整数をIronPDFを使用してPDFドキュメントに印刷することを想定しています。

using IronPdf;
using System;

class Program
{
    static void Main(string[] args)
    {
        // License your IronPdf installation
        License.LicenseKey = "Your-License-Key";

        // Create a new PDF document
        var pdf = new ChromePdfRenderer();

        // Sample string that represents an integer
        string numberString = "12345";

        // Attempt to parse the string into an integer
        int number;
        bool result = Int32.TryParse(numberString, out number);
        if (result)
        {
            // Create HTML content including the parsed number
            string htmlContent = $"<h1>The number is: {number}</h1>";

            // Generate a PDF from the HTML string
            var document = pdf.RenderHtmlAsPdf(htmlContent);

            // Save the PDF to a file
            document.SaveAs("Output.pdf");
            Console.WriteLine("PDF generated successfully with the number included.");
        }
        else
        {
            Console.WriteLine("The string could not be parsed into an integer.");
        }
    }
}
using IronPdf;
using System;

class Program
{
    static void Main(string[] args)
    {
        // License your IronPdf installation
        License.LicenseKey = "Your-License-Key";

        // Create a new PDF document
        var pdf = new ChromePdfRenderer();

        // Sample string that represents an integer
        string numberString = "12345";

        // Attempt to parse the string into an integer
        int number;
        bool result = Int32.TryParse(numberString, out number);
        if (result)
        {
            // Create HTML content including the parsed number
            string htmlContent = $"<h1>The number is: {number}</h1>";

            // Generate a PDF from the HTML string
            var document = pdf.RenderHtmlAsPdf(htmlContent);

            // Save the PDF to a file
            document.SaveAs("Output.pdf");
            Console.WriteLine("PDF generated successfully with the number included.");
        }
        else
        {
            Console.WriteLine("The string could not be parsed into an integer.");
        }
    }
}
Imports IronPdf
Imports System

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' License your IronPdf installation
		License.LicenseKey = "Your-License-Key"

		' Create a new PDF document
		Dim pdf = New ChromePdfRenderer()

		' Sample string that represents an integer
		Dim numberString As String = "12345"

		' Attempt to parse the string into an integer
		Dim number As Integer = Nothing
		Dim result As Boolean = Int32.TryParse(numberString, number)
		If result Then
			' Create HTML content including the parsed number
			Dim htmlContent As String = $"<h1>The number is: {number}</h1>"

			' Generate a PDF from the HTML string
			Dim document = pdf.RenderHtmlAsPdf(htmlContent)

			' Save the PDF to a file
			document.SaveAs("Output.pdf")
			Console.WriteLine("PDF generated successfully with the number included.")
		Else
			Console.WriteLine("The string could not be parsed into an integer.")
		End If
	End Sub
End Class
$vbLabelText   $csharpLabel

![Parse String to Int C# (開発者向けの動作方法): 図1 - 前述のコード例から出力されたPDF]

結論

文字列を整数に変換することは、特にユーザーや外部ソースからのデータ入力を扱う際に、C#プログラミングでは一般的に要求されることです。 Int32.ParseConvert.ToInt32TryParseの各メソッドの違いを理解することは、堅牢でエラーに強いコードを記述するために不可欠です。

これらの方法を効果的に使用することで、さまざまな入力形式に対応し、無効なデータに対して柔軟に対応することができます。 IronPDFの無料トライアルライセンスを試して、購入前にその機能を探ってください。 IronPDFをプロジェクトに長期的に統合したい方には、IronPDFのライセンスオプションは$799から開始します。

よくある質問

C#で文字列を整数に変換するにはどうすればよいですか?

C#では、文字列を整数に変換するために、Convert.ToInt32Int32.ParseInt32.TryParseのようなメソッドを使用できます。各メソッドには独自の利点があり、Int32.TryParseは例外を伴うことなく無効な入力を処理するのに理想的です。

C#でユーザー入力文字列を整数に変換するための最良の方法は何ですか?

Int32.TryParseメソッドは、C#でユーザー入力文字列を整数に変換するために推奨される方法であり、成功または失敗を示す真偽値を提供し、例外を投げることなく無効な入力を優雅に処理できます。

Convert.ToInt32メソッドは、C#でnullまたは空の文字列をどのように処理しますか?

C#のConvert.ToInt32メソッドは、無効な入力で例外が発生するのを避け、デフォルトの整数値0を返すことでnullまたは空の文字列を処理します。

C#でInt32.Parseを使用するとき、なぜ例外処理が必要ですか?

Int32.Parseを使用する場合、入力文字列が有効な数値形式でないかnullであるとFormatExceptionがスローされるため、プログラムの流れを中断することのないように注意が必要です。

IronPDFは、解析された整数をPDF文書に統合するために使用できますか?

はい、IronPDFは、HTMLコンテンツを、解析された整数を含む形式で直接PDF文書に変換することができ、フォーマットされた数値データの表示と配布を容易にします。

C#で文字列を整数に変換する実用的な応用は何ですか?

実用的な応用は、金融計算や統計分析などのアプリケーション内部で、計算や処理のためにユーザー入力または外部データを数値形式に変換することです。

C#アプリケーションでPDF作成にIronPDFはどう役立ちますか?

IronPDFは、HTML、CSS、JavaScript、および画像からPDFを生成、編集、管理することを可能にするC#ライブラリであり、ウェブコンテンツをPDF文書に統合するための理想的なツールです。

C#での整数変換にInt32.TryParseを使用するメリットは何ですか?

Int32.TryParseは、無効な入力で例外を投げないという利点があります。変換が成功したかどうかを示す真偽値を提供し、開発者がエラーを制御された方法で処理できるようにします。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。