로컬 드라이브에서 Excel 시트를 읽는 중 오류가 발생했습니다. 나는 엑셀 시트를 읽기 위해 asp.net을 사용하고있다. 내 오류 :Asp.net에서 Excel sheeet을 읽으시겠습니까?
Microsoft Office Access 데이터베이스 엔진을 열거 나 " '파일을 쓸 수 없습니다. 이미 다른 사용자가 독점적으로 열었거나 데이터를보고 쓰는 데 필요한 권한이 필요합니다.
protected void btnup_Click(object sender, EventArgs e)
{
string Extension = Path.GetExtension("Book1.xlsx");
string FolderPath = @"D:/Book1.xlsx";
Import_To_Grid(FolderPath, Extension);
}
private void Import_To_Grid(string FilePath, string Extension)
{
string conStr = "";
switch (Extension)
{
case ".xls": //Excel 97-03
conStr = ConfigurationManager.ConnectionStrings["Excel03ConString"] .ConnectionString;
break;
case ".xlsx": //Excel 07
conStr = ConfigurationManager.ConnectionStrings["Excel07ConString"] .ConnectionString;
break;
}
using (OleDbConnection conn = new OleDbConnection(conStr))
{
conn.Open();
DataTable sheetsName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" });
string firstSheetName = sheetsName.Rows[0][2].ToString();
string sql = string.Format("SELECT * FROM [{0}]", firstSheetName);
OleDbDataAdapter ada = new OleDbDataAdapter(sql, conStr);
DataSet set = new DataSet();
ada.Fill(set);
}
}
conn.Open()에서 오류가 발생합니다.
사용중인 코드를 표시하십시오 !!!!! 같은 파일에 여러 사람이 액세스하는 경우이 문제점이 있음을 기억하십시오. –
파일을 사용하는 사람이 없습니다. –