クリエイターの教科書

ChatGPT, Stable Diffusion, Visual Studio, Excelなど教科書

【Visual Studioの教科書】C#で文字を扱うには?利用するツールボックスは?

Visual Studio 2019でC#を利用する場合、文字やファイルの操作をどう行うかについてまとめていきます。

文字の操作

alphabet

 

文字を作成する

定番の文字操作はStringという形式の変数を作り、そこに文字を代入します。

文字はダブルクォーテーションで両端を区切ります。

String str = "OK";

 

文字列を複数つなげる場合は+でつなげれば大丈夫です。

String str = " 桜の" + "花びらたち";

 

数値データをつなげることもできます。

int i = 2008;

String str = " 桜の" + "花びらたち" + i;

 

また、変数を複数つないで文字を作る場合には以下のような書き方もできます。

int iLen = 198;
int iWeight = 158;
String str= string.Format("白鵬 翔の身長は{0}、体重は{1}。", iLen , iWeight );

 

文字の長さを取得する

文字オブジェクトで「Length」で取得できます。

 

String s="火星の男にあきたところよ";

int iLen= s.Length;

MessageBox.Show("result:" + i);

 

文字に含まれているか判定する

文字オブジェクトで「contains」を使うと判定できます。

以下なら含まれているので「true」が返ってきます。

String s = "地球の男にあきた?";
MessageBox.Show("result:" + s.Contains("男"));

 

文字を分割する

文字の分割は、人によっては良く使うことでしょう。例えばCSVファイルを読み込んで、改行マークや句読点で数値を切り出す....といった場合などです。

 

セパレートするための文字(空白や句読点など)の配列を作ります。

もとになる文字列で「Split」という関数を使うと、文字の配列として格納できます。

 

string sSource = "1,22,333";
char[] cSeparator= new char[] {','};
string[] sResult = sSource.Split(cSeparator);

 

以下の方法などで配列を確認してみましょう。

foreach(var s in sResult )
{
  MessageBox.Show(s);
}

 

 

数値と文字の変換

プログラムでエラーが起きやすいケースの一つが型変換です。

ソース内で先に明示的に型変換をしてから処理したほうが後々トラブルは少なくなると思います。

 

数値を文字にするには「ToString」を使います。

int i = 1;
string s = i.ToString();
MessageBox.Show(s);

 

文字を数値にするには「Parse」を使います。

String s = "100";
int i = int.Parse(s);
MessageBox.Show("result:" + i);

 

文字表示で使うツールボックス

ラベル Label

ラベルは、文字を表示しますが、基本的にはユーザさんが編集できない種類のパーツとなります。

f:id:apicode:20200821094817p:plain

 

配置後は、「Text」プロパティで文字を変更できます。

f:id:apicode:20200821094820p:plain

 

ラベルのメリットの1つが、文字背景を透過させれることです。

使い方については以下参照ください。 

apicodes.hatenablog.com

 

リンクラベル LinkLabel

LinkLabelは、ハイパーリンク、つまりクリックすることでウェブサイトを開くなどの処理ができるラベルです。

f:id:apicode:20200821094933p:plain

 

テキストボックス TextBox

ユーザが文字を自分で入力したり変更できる種類のインタフェースとなります。

初期状態では「Multiline」プロパティがオフで改行できません。複数行使う場合は設定をオンにしておきましょう。

f:id:apicode:20200821095054p:plain

 

リッチテキストボックス RichTextBox

通常のテキストボックスよりも、文字装飾などの表現を使いやすい種類のツールとなります。

f:id:apicode:20200821095227p:plain


 

このブログは、ネットや書籍上の情報、個人の体験や感想を中心にまとめたものです。 正確性を期していはいますが、間違い・誤訳等あるかもしれません。 当サイトの情報によって生じたいかなる損失について一切の責任を負わないものとします. あらかじめご了承ください。

プライバシーポリシー |〇利用規約 |〇問い合わせ