XLS... Волею судеб мне пришлось столкнуться с этим форматом передачи и хранения данных.
На, скажем так, производстве передо мной стояли определенные задачи, связанные с обработкой секретных данных со множества подразделений.
Все данные, в виду своей секретности, приходили в распечатанном виде запечатанными в конверт. Так уж принято было, по старым традициям... поэтому прежде чем обработать их, мне приходилось сначала вносить их в компьютер. В основном это были огроменные таблицы с цифрами и было их оооочень много. Естественно при постоянных переносах данных с бумаги в компьютер и обратно возникали неточности, которые потом на собраниях приходилось корректировать и дополнять "из воздуха". Меня это жутко бесило :)
Я не буду вдаваться в подробности о том, как мне приходилось воевать с местным начальством и начальством подразделений, чтобы объяснить им что так дело не пойдет. В итоге это все вылилось в две программы: одна у подразделений (программа-клиент), другая у меня (программа-сервер), и все данные в последствии передавались на "секретных" флешках в электронном виде. В формате xls! Так уж вышло, что ну никак без него не обойтись. Максимально быстро производить какие-либо операции с обработкой данных можно было только в Excel'e (хотя была программа-сервер, которая выполняла всю необходимую работу, иногда возникали некоторые нестандартные задачи, да и выводить на печать документы из Excel'я очень удобно).
Так как в моем арсенале знаний был лишь ЯП PHP, программа была написана конечно же на DevelStudio (тогда еще была только вторая версия).
И к чему я все это рассказал вам. Дело в том, что на написание программы у меня ушло чуть больше полу года. Самая первая версия была накатана буквально за 2-3 недели, остальное время я лишь расширял функциональные возможности, вносил изменения в интерфейс, учитывая мнение пользователей, устранял баги и т.д... Так вот! Самая первая версия была накатана за 2-3 недели!
Мне не приходилось ломать голову фактически ни над чем. Даже то, что все данные будут сохраняться и считываться с формата XLS (а 2003 офис сохранял документы не по современным стандартам xml разметки) меня не пугало! Найти решение этого вопроса на PHP не составило никакого труда. При чем решение было абсолютно бесплатным, нужно было лишь скачать пару файликов и заинклудить их в проекте. Все! Для того чтобы создать простейший документ в формате *.xls, который потом будет открываться во всех версиях Microsoft Office, нужно было написать все лишь пару-тройку строк PHP кода.
Сейчас я изучаю C++. И конечно же возникло желание перенести свой проект с PHP на C++. Но я понимаю, что это фактически не возможно. Как раз таки из-за того, что все данные должны передаваться в формате XLS. А для того чтобы сделать это на C++ я должен прибегнуть к непонятным извращениям типа OLE ODBC, либо вынужден покупать библиотеки для работы с этим форматом, потому что из всех бесплатных, что мне удалось найти, ни одна не смогла удовлетворить требованиям.
Господа форумчане, объясните мне, почему реализация чтения/записи файлов формата *.XLS (не *.XLSX(!)) на С++ - это что-то из раздела фантастики?