Читайте из файла Excel в C

Я хочу читать из файла Excel в C. Файл Excel 2007 содержит приблизительно 6 000 строк и 2 столбца. Я хочу сохранить содержание в 2-D массиве в C. Если там существует библиотека C или какой-либо другой метод, затем сообщенный мне.

7
задан BЈовић 23 December 2011 в 13:40
поделиться

3 ответа

Excel 2007 хранит данные в виде группы файлов, большинство из которых в формате XML, и все они собраны вместе в zip-файл. Если вы хотите просмотреть содержимое, вы можете переименовать свой .xlsx в something.zip , а затем открыть его и просмотреть файлы внутри.

Предположим, что ваш файл Excel содержит только необработанные данные, и все, о чем вы заботитесь, это его чтение (т. Е. Вы не нуждаетесь / хотите обновить его содержимое и заставить Excel снова открыть его), чтение данные на самом деле довольно просты. Внутри zip-файла вы ищете подкаталог xl \ worksheets \ , который будет содержать несколько файлов .xml , по одному для каждого листа из Excel (например, значение по умолчанию рабочая книга будет иметь три листа с именами sheet1.xml , sheet2.xml и sheet3.xml ).

Внутри них вы ищете тег . Внутри у вас будет тегов (по одному для каждой строки данных), а внутри них тегов с атрибутом r = RC где RC заменяется нормальной записью строки / столбца (например, «A1»). Тег будет иметь вложенный тег , в котором вы найдете значение для этой ячейки.

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

13
ответ дан 6 December 2019 в 09:58
поделиться

У вас есть несколько вариантов:
1) Сохраните рабочий лист Excel в файл csv и проанализируйте его.
2) Используйте COM API (проприетарный и хитрый для Windows)
3) См. Эту ссылку , чтобы узнать о классе C ++, который вы можете изменить.

3
ответ дан 6 December 2019 в 09:58
поделиться

Другой C lib для чтения данных из файлов Excel можно найти здесь .

3
ответ дан 6 December 2019 в 09:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: