• 締切済み

OpenDialogからテキストファイルの読み込み

void __fastcall TForm1::N1Click(TObject *Sender) {     FILE *fp;      if(OpenDialog1->Execute()) { FNN1 = ExtractFilePath(OpenDialog1->FileName)         fp = fopen(FNN1.c_str(), "r" );              fread(txtdata,2,360,fp); } } [C++ エラー] Unit1.cpp(52): E2034 'AnsiString' 型は 'void *' 型に変換できない というエラーがでます。 解決方法を教えてください。

みんなの回答

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.3

「どう書き換えたら、どううまくいかない」のかを書いてくれなきゃそれに対するアドバイスもできません。

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

ExtraFilePathではドライブ名とフォルダー名までしか取れません これでfopenをしても失敗するの落ちですが … これは意図した動きなのでしょうか

deepsky11
質問者

補足

うーん、C++builderについては勉強不足です。。 図書館で探しても見つかりませんでした。 何かお勧めサイトとかありますかね?

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

環境というか使っているコンパイラを書きましょう。Borland C++ BuilderかC Compilerではないかと思いますが。 変数txtdataがAnsiString型のようですが、エラーの通りvoid *には変換できないのでchar配列などを使って一旦freadし、それをtxtdataに渡してやればいいのでは。

deepsky11
質問者

補足

charを使ってもうまくいきません。

関連するQ&A

専門家に質問してみよう