загрузка файла c # - ошибка - PullRequest
0 голосов
/ 17 мая 2010

У меня есть веб-страница, где пользователь может загрузить файл Excel. Я пробую 2 разных файла - один работает без проблем, а другой выдает мне эту ошибку:

Ошибка: длина не может быть меньше нуля. Имя параметра: длина

Я знаю, что иногда это происходит, когда размер файла равен нулю, но здесь это не так.

Может ли кто-нибудь пролить свет на этот вопрос? Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.

Ответы [ 2 ]

0 голосов
/ 18 мая 2010

Есть ли на вашей странице панель обновлений? У меня была проблема, когда я пытался использовать FileUpload с панелью обновления на странице.

Очень странный случай, я предлагаю вам попытаться сделать копию файла, который работает, и попробовать это, чтобы проверить, работает ли он тоже или, возможно, проверьте, были ли оба файла сохранены в одной и той же версии Excel.

0 голосов
/ 17 мая 2010

Как уже отмечалось, требуется больше информации. Непонятно, открываете ли вы файл Excel и выполняете ли обработку непосредственно из него или читаете данные из Excel напрямую в таблицу данных через ODBC или что-то еще.

Большинство моих проблем с чтением файлов Excel вызваны либо заголовками столбцов, либо данными разных типов. Сначала проверьте, имеют ли два файла Excel одинаковые столбцы, все ли столбцы имеют имена и т. Д.

Когда вы читаете в DataTable, программа делает предположение о типе данных каждого столбца. Если первые несколько ячеек пусты, предположение может быть неверным. Если ваши данные похожи на мои, столбец, который выглядит так, как будто это все числа, может быть наполовину фактическим числом, наполовину строкой. Или столбец дат может иметь недопустимое значение.

Мне больше повезло, что я записал данные из Excel в файл .csv, и программа написала schema.ini и прочитала его с помощью текстового драйвера Microsoft, но это может не подойти вашим данным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...