K
K
kykyryky2016-07-31 10:42:42
Programming
kykyryky, 2016-07-31 10:42:42

How to read and write xlsx using standard .NET tools?

Hello. Suppose there is an arbitrary xlsx (or xls) file, for example:
213887e0c63f4fe4b6bea2360f5a1d7f.jpg
Is it possible to read it and write something to it without third-party libraries, without ms office installed on the machine, etc. - just standard C# tools?
I looked at various ways:
1) OLE DB - works only with data in the form of database tables, does not fit my table.
2) Microsoft.Office.Interop.Excel - you need an installed office.
What other options do I have? Need advice.

Answer the question

In order to leave comments, you need to log in

6 answer(s)
D
Denis Fedorets, 2016-08-06
@kykyryky

If you plan to work only with simple signs - EPPlus is a great way out.
If the plates are planned to be large and complex - the best option on the market is Aspose Cells.
The above allow you to do without an established office.
But huge heavy tables with a lot of formulas are still not able to digest except native MS Excel, alas ((
I don’t advise OpenXML without extreme need, it’s like an assembler - it can do everything, but it’s very low-level. What a coma does with one command there often requires indistinct code on one and a half screens...

M
Mikhail Plyusnin, 2016-07-31
@rpe4a

Without third-party vryatli ... But I have already used ClosedXML many times

S
Stanislav Makarov, 2016-07-31
@Nipheris

Если вас интересует xlsx, можете стандартными средствами его распаковать (т.к. это обычный ZIP), и поработать с содержимым. Основное содержимое книги будет в XML (не помню имя файла), так что сформировать его особых проблем не составит. Если вариант подходит, расскажу подробнее, что можно сделать.
А вообще EPPlus тащит.

Артём Свешников, 2016-07-31
@zenitfan2109

Если на компьютере, где запускается ваша программа, установлен Microsoft Office, то можно использовать это.

L
Larry Underwood, 2016-08-01
@Hydro

OpenXML, правда API там низкоуровневый.

O
Ogoun Er, 2016-08-15
@Ogoun

Из всех библиотек которые перепробовал лучшим выбором, на мой взгляд, является NPOI, основные плюсы - не требует наличия офиса на машине, и умеет работать со старыми форматами (xls), в отличие от того же EPPlus.
Для работы с Excel из nuget'а нужно установить сам NPOI и NPOI.ExcelExtend

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question