ExcelファイルからAccessデータベースにデータを読み込むC#プロジェクトに取り組んでいます。type の例外が発生し続けOleDbException
ます。問題は、そのエラーが発生する理由ではなく、それを処理する方法です。アップロードするファイルをユーザーに決定させ、一部のファイルのヘッダーまたは形式が正しくない可能性があるため、エラーが発生します。私が使用しているコードは次のとおりです。
** のある行は、例外をスローするものです。私は使用してみました:
catch (OleDbException)
catch {}
catch (Exception)
しかし、例外が私の catch 句にスローされることはないようです。
public UploadGrades(string filename, OleDbConnection con)
{
this.filename = filename;
this.con = con;
//connect to the file and retrive all data.
excelconn = new OleDbConnection(
@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filename + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=1\"");;
try
{
excelconn.Open();
OleDbCommand command = new OleDbCommand("SELECT temp, name, score, submitdate, test from [sheet1$]", excelconn);
**reader = command.ExecuteReader();**
}
catch
{
MessageBox.Show("The File " + filename + " cann't be read. It is either in use by a different user \n or it doen't contain the " +
"correct columns. Please ensure that column A1 is temp B1 is Name C1 is Score D1 is Submitdate and E1 is Test.");
}
}