C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.72733 の関連記事表示

<< 0 >>
■72733  ビットマップファイルの保存と読み出しについて
□投稿者/ mako_chan3 -(2014/07/09(Wed) 11:57:49)

    分類:[C#] 

    使用言語はC#、環境はVisual Studio 2010です。
    pictureBoxに描いた画像を保存した後、それを読み出し再度同じpictureBoxに描画したいと考えています。
    サンプルコードがあるのでそのまま記述しました。
    保存はできましたが、読み出しで開くときに
    「'SystemIO IOException'のハンドルされていない例外がmscorlib.dllで発生しました。」
    というコメントが出て、読み出し動作が止まります。
    原因はどこにあるのでしょうか。
    保存、読み出しのコードは下記の通りです。
    よろしくお願いいたします。

    private void File_Open_Click(object sender, EventArgs e)
    {
    Bitmap bmp = new Bitmap(pb1.Image);
    if(openFileDialog1.ShowDialog() == DialogResult.OK)
    {
    int x, y;
    BinaryReader br = new BinaryReader(new FileStream(openFileDialog1.FileName,
    FileMode.Open, FileAccess.Read));
    x = 0; y = 0;
    while(true)
    {
    x = br.ReadInt32();
    if(x == 999) break;
    y = br.ReadInt32();
    bmp.SetPixel(x, y, Color.Black);
    }
    }
    pb1.Image = bmp;
    }

    private void File_Save_Click(object sender, EventArgs e)
    {
    int i, j, nx, ny, rr, bb;
    Color col;

    if(saveFileDialog1.ShowDialog() == DialogResult.OK);
    {
    BinaryWriter bw = new BinaryWriter(new FileStream(saveFileDialog1.FileName,
    FileMode.Create, FileAccess.Write));
    nx = pb1.Width;
    ny = pb1.Height;
    Bitmap bmp = new Bitmap(pb1.Image);

    for( j = 0; j < ny; j++)
    for( i = 0; i < nx; i++)
    {
    col = bmp.GetPixel(i,j);
    rr = col.R; //赤成分を調べる
    bb = col.B; //青成分を調べる
    if(rr == 0 && bb == 0) //黒画像ならば
    {
    bw.Write(i); //書き込む
    bw.Write(j);
    }
    }
    bw.Write(999);
    bw.Write(999);
    }
    }
親記事 /過去ログ121より / 関連記事表示
削除チェック/

■72734  Re[1]:ヒ゛ットマッフ゜ファイルの保存と読み出しについて
□投稿者/ 魔界の仮面弁士 -(2014/07/09(Wed) 12:17:42)
    No72733 (mako_chan3 さん) に返信
    > 使用言語はC#、環境はVisual Studio 2010です。
    インデント保持のため、ソースコードを貼る場合には
    「図表モード」での投稿をお願いします。

    また、掲示板投稿時の注意書きに、
      【半角カナは使用しないでください。文字化けの原因になります。】
    との記述があったかと思います。再読の上、ご協力をお願いします。


    > サンフ゜ルコート゛があるのでそのまま記述しました。
    どこのサンプルでしょうか?


    > 原因はどこにあるのでしょうか。
    開いたファイルを閉じていないからですね。
    FileStream を使用後に閉じるため、Close メソッドの呼び出しが必要です。

    また、こういう場合には using ブロックを併用する事が望ましいです。
    http://www.divakk.co.jp/aoyagi/csharp_tips_using.html
記事No.72733 のレス /過去ログ121より / 関連記事表示
削除チェック/

■72749  Re[2]: :ヒ゛ットマッフ゜ファイルの保存と読み出しについて
□投稿者/ mako_chan3 -(2014/07/11(Fri) 07:50:04)
    No72734 (魔界の仮面弁士 さん) に返信
    > ■No72733 (mako_chan3 さん) に返信
    >>使用言語はC#、環境はVisual Studio 2010です。
    > インデント保持のため、ソースコードを貼る場合には
    > 「図表モード」での投稿をお願いします。
    >
    > また、掲示板投稿時の注意書きに、
    >   【半角カナは使用しないでください。文字化けの原因になります。】
    > との記述があったかと思います。再読の上、ご協力をお願いします。
    >
    >
    >>サンフ゜ルコート゛があるのでそのまま記述しました。
    > どこのサンプルでしょうか?
    >
    >
    >>原因はどこにあるのでしょうか。
    > 開いたファイルを閉じていないからですね。
    > FileStream を使用後に閉じるため、Close メソッドの呼び出しが必要です。
    >
    > また、こういう場合には using ブロックを併用する事が望ましいです。
    > http://www.divakk.co.jp/aoyagi/csharp_tips_using.html

    ご助言ありがとうございます。
    お礼が遅れてしまい、恐縮です。
    サンプルコードは、CQ出版社の「[改訂版]ディジタル画像処理の基礎と応用」のニューラルネットワークの章に掲載(添付のCD-ROM内)されて
    いたものです。
    トライしてみます。
    また、結果を報告させていただきます。
記事No.72733 のレス /過去ログ121より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -