写入操作期间发生磁盘错误。 (来自HRESULT的异常:0x8003001D(STG_E_WRITEFAULT))

时间:2015-06-16 07:33:28

标签: asp.net vb.net opencsv

我正在使用EPPlus来读取vb.net中的.csv文件。 当我运行此代码时,我收到错误"写操作期间发生磁盘错误。

  

(HRESULT异常:0x8003001D(STG_E_WRITEFAULT))"

这是我的代码:

Public Function ImportExcelSheet(ByVal filePath As String) As DataTable
    Dim dtImportData As New DataTable()
    Try
        'If csv file have header then "true" else "false"
        Dim hasHeader As Boolean = True
        Using pck = New OfficeOpenXml.ExcelPackage()
            Using stream = File.OpenRead(filePath)
                pck.Load(stream)
            End Using

我该怎么做才能解决此错误?

2 个答案:

答案 0 :(得分:5)

我使用从excel导入的插件遇到了同样的错误。最初我将导入文件保存为.xls。

我打开了这个Excel电子表格,重新保存为.xlsx。

这解决了这个问题。

所以也许是csv保存为的文件格式。

答案 1 :(得分:1)

我在读取xls文件时遇到同样的错误。事实证明,工作簿在第一张表上有隐藏的行。我检查了文档并删除了隐藏的行,它完美地运行了