- comments
- trackbacks

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
 ↑↑↑↑↑↑よければクリックをお願いします↓↓↓↓↓↓
0 comments
0 trackbacks

C#にて文字列比較に「 == 」を使用することがありますがなるべくなら

C#にて文字列比較に「 == 」を使用すべきではありません

・「 == 」を使用して比較
if("abc" == "abc")
{
//
}


MSDNのC#プログラミングガイドにもありますが、文字列比較においては比較の種類を明示的に指定するメソッドを指定すべきです

「== 」でも文字列の比較は可能ですが、場合によっては予期せぬ演算子比較が行われることでバグの温床となる可能性もあります

具体的には、文字列ではなく文字列が含まれるアドレス自体を比較してしまいアドレスに格納されている文字列が同一でもFalseとして判定されることがあります


(参考:MSDNC#プログラミングガイド)
<https://msdn.microsoft.com/ja-jp/librarycc165449.aspx>

●stringクラスのequals()メソッドを使用

・equals()メソッドを使用しての比較ソース
if (string.Equals("abc", "abc") )
{
//
}


このequals()メソッドはオブジェクトの比較に用いられます。
Stringクラスで、equals()メソッドを定義した場合は
「2つのオブジェクトが同じかどうか」
「2つのオブジェクトが表している文字列の内容が同じかどうか」
の比較を行います。

文字列の比較を行う場合は気をつけてみると良いかもしれません
 ↑↑↑↑↑↑よければクリックをお願いします↓↓↓↓↓↓
0 comments
0 trackbacks

リソースとしてアプリケーション内にあらかじめ埋め込んだファイルの読み込みを行う方法。

【リソースとして埋め込みを行う】
まずはリソースとしてファイルの埋め込みを行っていきます。
埋め込むファイルは、一般的には画像ファイルが多いです。
ですが、今回画像ではなくバイナリデータのファイルを使って行っていきたいと思います。

 ●埋め込み方法①
  Visual Studioのメニューの「プロジェクト」-「プロパティ」でプロジェクトデザイナを表示する。

 ●埋め込み方法②
  ・ソリューションエクスプローラを選択し、右クリックでポップアップメニューを表示。
  ・[追加]メニューの[既存の項目]メニューを選択
  ・追加したファイルを選択し、プロパティウィンドウの[ビルドアクション]プロパティを確認。
ここでビルドアクションを"埋め込まれたリソース"に変更を行います。

【リソースから取得方法】
・下記のアセンブラを追加します。
// アセンブリの追加
 using System.Reflection;

・取得処理ソース
// 現在の実行ファイルのアセンブリを取得
 Assembly assembly = Assembly.GetExecutingAssembly();
// 現在のアセンブリに埋め込まれたリソースのストリームを取得

Stream stream = assembly.GetManifestResourceStream("Resource.Bdata"); // リソース名は『(実行ファイルの名前空間).(追加したファイル名)』

サブフォルダに画像を配置した場合サブフォルダを含めた名前空間を指定をします
"Resource.datas.Bdata"
 ↑↑↑↑↑↑よければクリックをお願いします↓↓↓↓↓↓
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。