엑셀 파일에서 데이터를 읽고 데이터 유효성을 검사 한 후 데이터베이스에 업로드 할 수 있어야합니다.VB.Net에서 서버에 업로드하지 않고 Excel 파일의 데이터를 읽을 수 있습니까?
그러나 내가 사용하고있는 서버는 웹 응용 프로그램에 대한 쓰기 권한을 허용하지 않으므로 업로드를 통해 서버에 파일을 쓰지 않고도 Excel 파일을 읽을 수 있는지 알아야합니다.
지금까지 명확한 답변을 찾을 수 없었습니다.
감사합니다.
엑셀 파일에서 데이터를 읽고 데이터 유효성을 검사 한 후 데이터베이스에 업로드 할 수 있어야합니다.VB.Net에서 서버에 업로드하지 않고 Excel 파일의 데이터를 읽을 수 있습니까?
그러나 내가 사용하고있는 서버는 웹 응용 프로그램에 대한 쓰기 권한을 허용하지 않으므로 업로드를 통해 서버에 파일을 쓰지 않고도 Excel 파일을 읽을 수 있는지 알아야합니다.
지금까지 명확한 답변을 찾을 수 없었습니다.
감사합니다.
업로드 제어가 fileUpload
이라고 가정 해 봅시다.
fileUpload.SaveAs("path")
을 수행 할 필요가 없습니다. fileUpload.PostedFile.InputStream
으로 스트림을 읽을 수 있습니다. 잘못된 수 있습니다 다음, 그래서 내가 VB.net 잘 알고 아니에요,
using (var file = ZipFile.Read(fileUpload.PostedFile.InputStream))
{
foreach (var zipEntry in file.Where(ze => ze.FileName.EndsWith(".xls")
|| ze.FileName.EndsWith(".xlsx")))
{
// process the Excel files here.
}
}
죄송합니다 : 난 (라이브러리 그런데 이오니아입니다) 거기에 엑셀 시트와 zip 파일이 사용. 그러나 VB.net 버전을 요청했기 때문에 :
Using file As var = ZipFile.Read(fileUpload.PostedFile.InputStream)
For Each zipEntry As var In file.Where(ze => ze.FileName.EndsWith(".xls") or ze.FileName.EndsWith(".xlsx"))
' process the Excel files here.
Next
End Using
단일 파일은 어떻습니까? 내부 데이터에 액세스하는 표준 방법이 있습니까? 루핑을 통해 데이터를 저장합니까? – Blunderfest
귀하의 질문에 대한 언급에 언급했듯이 : 내가 아는 한, 두 가지 방법으로 파일을 읽는 것이 있습니다. 하나는 매우 느리고 버그가있는 Excel 라이브러리를 사용하고 있으며 스트림에서 파일을 읽을 수 있는지 여부를 알지 못합니다. 또는 파일을 원본으로 사용해야하는 OleDb 공급자를 사용합니다. 다른 옵션이있는 경우, 나는 그것을 인식하지 못합니다. 내 예제에서는 스트림을 사용할 수있는 방법을 보여 주면됩니다. –
엑셀 파일을 읽는 방법을 알지 못했습니다. OleDb를 사용하는 경우 연결 문자열에 파일이 필요하기 때문에 문제가 발생합니다. 글쎄, 내가 아는 한. –
자세한 내용을 제공해 주시겠습니까? –