プロが教える店舗&オフィスのセキュリティ対策術

いま、Visual C++ 2008 Express Editionで、コマンドボタンをクリックした時に、600kバイト程度のバイナリファイルから特定の番地のデータを抜き出して(2バイト分)、そのデータをテキストデータに変換してテキストボックスに表示させたいのですが、コードを作成したのですが、エラーがたくさんでて書き方がよくわかりません。

一応コマンドボタンのところはこのように書きました。まだ、ファイルを読み込むまで行っていません。


private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
  //指定したファイル名でStreamReaderを設定する

  try{
      sreader1=gcnew StreamReader("sample.txt");
  }catch(Exception^ ex){
      //Console::WriteLine(ex->Message);
      return 0;
  }
this->textBox1->Text = L"変更1";
  this->textBox2->Text = L"変更2";
this->textBox3->Text = L"変更3";
}
};

どうかご教授いただきますようよろしくお願い致します。

「Visual C++ 2008 Expr」の質問画像

A 回答 (2件)

 こんにちは。

補足頂きました。HPとエラー内容の方を拝見させて頂きました。
 この手のエラーは文字列以外の部分で、「全角文字」を使用しているのが原因です。
 form1.hの中の

System::IO::StreamReader^ sr = gcnew System::IO::StreamReader(_T("sample.txt"));

 の左側の空白部分に、「全角スペース」が混ざり込んでいるのが原因ではないでしょうか。ひとまず、バックスペースで、空白を消してみて下さい。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

本当にありがとうございます!!エラーが22もありましたが、1にまで減りました。とりあえず自力でやってみたいと思います。

お礼日時:2009/05/25 18:24

 こんばんは。

こう言う事でしょうか。

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)
{
//指定したファイル名でStreamReaderを設定する
try
{
System::IO::StreamReader^ sr = gcnew System::IO::StreamReader(_T("sample.txt"));
//受け皿
array<wchar_t>^ buf = gcnew array<wchar_t>(2);

//先頭から0x1f63バイト動かす
sr->BaseStream->Seek(0x1f63, System::IO::SeekOrigin::Begin);

//2バイト読み込む
sr->Read(buf, 0, buf->Length);

//此処でテキストボックスに入れる
this->textBox1->Text = gcnew System::String(buf);
}
catch(System::Exception^ ex)
{
System::Windows::Forms::MessageBox::Show(ex->ToString());
}

//this->textBox1->Text = L"変更1";
this->textBox2->Text = L"変更2";
this->textBox3->Text = L"変更3";
}
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

教えていただいたコーディングでVisual C++ 2008 Express Editionでコンパイルかけてやっています。ただ、ちょっとエラーが数個出てきてその内容が理解できない状態です。

下のページにそのエラー内容が表示されているところの絵を貼り付けてみました。
http://sourceforge.jp/projects/felicareader/wiki …

どなたかもしよければ、何が悪く、どう解消したらよいか教えていただけませんでしょうか。

また、このC++プロジェクトは下のURLからダウンロードすることもできます。
http://svn.sourceforge.jp/view/RungeKutta/RungeK …

お礼日時:2009/05/25 14:33

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!