How to convert Excel to CSV and export Excel files to CSV UTF-8 format
Comma-separated values (CSV) is a widely used file format that stores tabular data (numbers and text) as plain text. Its popularity and viability are due to the fact that a great deal of programs and applications support csv files, at least as an alternative import / export format. Moreover, the csv format allows users to glance at the file and immediately diagnose the problems with data, if any, change the CSV delimiter, quoting rules, etc. All this is possible because a CSV file is plain text and an average user or even a novice can easily understand it without any learning curve.
In this article, we will try to investigate quick and efficient ways to export data from Excel to CSV and learn how to convert Excel to CSV keeping all special characters and foreign symbols intact. The below methods work for all versions of Excel 2016, 2013, 2010 and 2007.
How to convert Excel file to CSV
If you need to export an Excel file to some other application, e.g. to the Outlook Address book or Access database, you can convert your Excel worksheet to CSV first and then import a .csv file in another program. Below you will find the step-by-step instructions to export an Excel workbook to the CSV format by using Excel’s Save As command.
- In your Excel workbook, switch to the File tab, and then click Save As. Alternatively, you can press F12 to open the same Save As dialog.
- In the Save as type box, choose to save your Excel file as CSV (Comma delimited).
Besides CSV (comma delimited), a few other csv formats are available to you:
- CSV (comma delimited). This format saves an Excel file as a comma-separated text that can be used in another Windows program or another version of Windows operating system.
- CSV (Macintosh). This format saves your Excel workbook as a comma-separated file for use on Mac operating system.
- CSV (MS-DOS). Saves your Excel file as a comma-separated file for use on the MS-DOS operating system.
- Unicode Text (*txt). This is a computing industry standard supported by almost all current operating systems including Windows, Macintosh, Linux and Solaris Unix. It can handle characters of almost all modern languages and even some ancient ones. So, if you Excel file contains data in a foreign language, save it in the Unicode Text format first and then convert to CSV, as explained in Exporting Excel to CSV UTF-8 or UTF-16.
This is how you convert Excel to CSV. The process is quick and straightforward, and you are unlikely to run into any hurdles along the way.
Export Excel to CSV with UTF-8 or UTF-16 encoding
If your Excel spreadsheets contain some special symbols, foreign characters (tildes, accent etc.) or hieroglyphs, then converting Excel to CSV in the way described above won’t work.
The point is the Save As CSV command distorts any characters other than ASCII (American Standard Code for Information Interchange). And if your Excel file has smart quotes or long dashes (e.g. inherited from the original Word document that was copied /pasted to Excel), these characters would be mangled too.
An easy alternative is saving an Excel workbook as a Unicode(.txt) file and then converting it to CSV. In this way you will keep all non-ASCII characters undamaged.
Before we proceed further, let me briefly point out the main differences between UTF-8 and UTF-16 encodings so that you can choose the right format in each particular case.
UTF-8 is a more compact encoding since it uses 1 to 4 bytes for each symbol. Generally, this format is recommended if ASCII characters are most prevalent in your file because most such characters are stored in one byte each. Another advantage is that a UTF-8 file containing only ASCII characters has absolutely the same encoding as an ASCII file.
UTF-16 uses 2 to 4 bytes to store each symbol. However, a UTF-16 file does not always require more storage than UTF-8. For example, Japanese characters take 3 to 4 bytes in UTF-8 and 2 to 4 bytes in UTF-16. So, you may want to use UTF-16 if your Excel data contains any Asian characters, including Japanese, Chinese or Korean. A noticeable disadvantage of this format is that it’s not fully compatible with ASCII files and requires some Unicode-aware programs to display them. Please keep this in mind if you are going to import the resulting file somewhere outside of Excel.
How to convert Excel to CSV UTF-8
Suppose you have an Excel worksheet with some foreign characters, Japanese names in our case:
To export this Excel file to CSV keeping all the hieroglyphs intact, follow the steps below:
- In your Excel worksheet, go to File > Save As.
- Name the file and choose Unicode Text (*.txt) from the drop-down list next to «Save as type», and then click Save.
If you do want a comma-delimited CSV file, proceed with Notepad in the following way:
- Select a tab character, right click it and choose Copy from the context menu, or simply press CTRL+C as shown in the screenshot below.
- Press CTRL+H to open the Replace dialog and paste the copied tab ( CTRL+V ) in the Find what field. When you do this, the cursor will move rightwards indicating that the tab was pasted. Type a comma in the Replace with field and click Replace All.
In Notepad, the resulting file should look similar to this:
How to convert an Excel file to CSV UTF-16
Exporting an Excel file as CSV UTF-16 is much quicker and easier than converting to UTF-8. This is because Excel automatically employs the UTF-16 format when saving a file as Unicode (.txt).
So, what you do is simply click File > Save As in Excel, select the Unicode Text (*.txt) file format, and then change the file extension to .csv in Windows Explorer. Done!
If you need a comma-separated or semicolon-separated CSV file, replace all tabs with commas or semicolons, respectively, in a Notepad or any other text editor of your choosing (see Step 6 above for full details).
Other ways to convert Excel files to CSV
The methods of exporting Excel to CSV (UTF-8 and UTf-16) we have just described are universal, meaning they work for all special characters and in any Excel version, from 2003 to Excel 2016.
There exist a handful of other ways to convert Excel data to CVS. Unlike the previous solutions, they won’t produce a pure UTF-8 CSV file (except for OpenOffice that allows exporting Excel files to several UTF encodings), but in most cases they will contain the correct characters which you can painlessly convert to the UTF-8 format later using any text editor.
Convert Excel to CSV using Гугл spreadsheets
The use of Гугл Spreadsheet to export an Excel file to CSV seems to be a very simple workaround. Assuming that you already have Гугл Drive installed, perform the following 5 easy steps.
- On the Гугл Drive, click the Create button and choose Spreadsheet.
- Click Import from the File menu.
Finally, open the CSV file in some text editor to make sure all of the characters are saved correctly. Regrettably, the CSV files converted in this way do not always correctly display in Excel. Kudos to Гугл and shame to Microsoft : )
Save .xlsx to .xls and then convert to .csv file
This method of converting Excel to CSV hardly needs any further explanations because the heading says it all.
I have come across this solution on one of Excel forums, cannot remember now which exactly. To be honest, this method has never worked for me, but many users reported that special characters, which got lost when saving .xlsx directly to .csv, were preserved if to save a .xlsx file to .xls first, and then save .xls as .csv in Excel, as explained in How to convert Excel to CSV.
Anyway, you can try this method of exporting Excel to CSV on your side and if it works, this can be a real time-saver.
Save Excel as CSV using OpenOffice
OpenOffice, an open-source suite of applications, includes a spreadsheet application named Calc that is really good at exporting Excel data to CSV format. In fact, it provides more options to convert spreadsheets to CSV files (encodings, delimiters etc.) than Excel and Гугл Sheets combined.
You simply open your Excel file with OpenOffic Calc, click File > Save as… and save the file as Text CSV (.scv) type.
In the next step, you will have a choice of various Character sets (encodings) and Field delimiters. Naturally, you select Unicode (UTF-8) and comma if your goal is a CVS UTF-8 file (or whatever encoding and separator character you need) and click OK. Typically, the Text delimiter will remain the default quotation mark («).
You can also use another application of the same kind, LibreOffice, to perform fast and painless Excel to CSV conversions. It would be really nice if Microsoft Excel provided similar options with regard to CSV encodings, agree?
These are the ways of converting Excel to CSV I am aware of. If you know other more efficient methods to export an Excel file to CSV, please do share in comments. Thank you for reading!
You may also be interested in
70 comments to «How to convert Excel to CSV and export Excel files to CSV UTF-8 format»
I am searching for an easy way to just export the current sheet to csv, but keep my xlsx workbook intact. I frequently save as csv and forget to then save my workbook as xlsx and loose all of my work. Am I missing an easier way?
Исследование разных веб-технологий, математических алгоритмов и проектирование веб-приложений.
Рубрики
- ▼ Уроки: JS & Imacros (17)
Комменты
- Сергей к записи [Урок 11] . Формат JSON, как хранилище всех данных в iMacros.
- Сергей к записи [Урок 11] . Формат JSON, как хранилище всех данных в iMacros.
- Тру-ля-ля к записи [Урок 9] . Чтение и запись txt-файлов в iMacros. Разбираем говнокод и смотрим «Best Practice».
- Mirex к записи [Урок 14] . 100%-распознавание капчи reCaptcha v.2 в iMacros+JS через сервис rucaptcha.com
- Никита к записи Как отключить Safe Mode(Неопасный режим) в Firefox
[Урок 10] . Разбираем формат CSV. Грамотное чтение и запись таблиц Excel(без !DATASOURCE).
В прошедшем уроке мы с вами познакомились с грамотными методами чтения и записи файлов в iMacros. Сейчас мы пойдем незначительно далее и будем разглядывать формат табличного представления данных CSV. От обыденных текстовых файлов их различает наличие спецификации, другими словами точных правил, по которым они должны быть построены. Соблюдение данных правил открывает нам огромные способности, к примеру, такие файлы можно будет открывать в остальных редакторах, употреблять с разным программным обеспечением, которое поддерживает их.
Структура формата CSV
CSV(Comma-Separated Values) — практически переводится, как «значения, разбитые запятыми». Это текстовый формат для представления табличных данных.
Любая строчка — это одна строчка таблицы.
Разделителем (англ. delimiter) значений колонок является знак запятой «,». Но на практике нередко употребляются остальные разделители, к примеру «;»
Значения, содержащие зарезервированные знаки (двойная кавычка, запятая, точка с запятой, новенькая строчка) обрамляются двойными кавычками («). Если в значении встречаются кавычки — они представляются в файле в виде 2-ух кавычек попорядку.
Вы сможете написать последующий текст и сохранить его в файл с расширением «csv»:
Таковой файл просто раскрывается в Excel(либо в OpenOffice) и все значения находятся в собственных ячейках таблицы.
Аналогично вы сможете взять всякую экселевскую таблицу(с расширениями .xls либо .xlsx) и сохранить ее в формат CSV. Это весьма обычной формат и он не поддерживает формулы, вычисления и т.д., как настоящие форматы Excel. Но, бывает весьма комфортно записывать данные из iMacros и позже обрабатывать их в Excel и, напротив, брать информацию из Excel и употреблять ее в собственных скриптах.
Примечание: по сути у Excel еще есть XML-формат, который поддерживает формулы, стили дизайна и огромную часть функционала Excel, он текстовый, а не бинарный, как .xls либо .xlsx. Тем не наименее, он куда наиболее непростой, нежели CSV и просит наиболее глубоко осознания и способностей в кодинге. Мне доводилось генерировать с помощью JS вывод отчетов с перекрестными формулами в Excel, задачка довольно трудозатратная и времязатратная.
Чтение формата CSV и получение хоть какой ячейки таблицы при помощи iMacros и Javascript
В первом и в прошедшем уроках я ругал обычные способности iMacros по работе с таблицами. Я понимаю, что они добавили !DATASOURCE и прочую нечисть, с очень урезанным функционалом для обычных юзеров, чтоб создать жизнь мещанина проще. Но, вышло совершенно напротив. Не стоит отчаиваться, сейчас я с вами поделюсь своим решением, которое дозволит для вас манипулировать таблицами, как для вас вздумается.
Для загрузки файла в переменную, мы используем код для чтения файла из прошедшего урока:
Замечательно! Мы получим содержимое файла в виде текста. Это не весьма комфортно, потому преобразуем его в двумерный Javascript-массив.
Вот таковой массив я желаю созидать в итоге:
В этом случае, у нас получится массив с 3-мя элементами. Каждым элементом этого массива будет иной массив, состоящий из численных и строковых значений. Если незначительно пошевелить мозгами, у нас уже есть довольно познаний для воплощения подобного преобразования.
Парсинг формата CSV
На 1-ый взор может показаться, что мы можем глупо употреблять 2 раза способ split(), так как текст мы можем разбить на массив строк с помощью split(‘rn’) , а строчку на ячейки с помощью split(‘,’) , так как в качестве разделителя у нас употребляется запятая. Это не совершенно так, если у нас в неких ячейках будет текст, содержащий в для себя запятые, наш метод будет работать некорректно.
Давайте добавим незначительно запятых в начальные данные(test.csv):
По сути ситуаций, когда таковой подход со split() не сработает, быть может величавое огромное количество, здесь и кавычки различных видов, и экранированные знаки и т.д. На помощь нам придет один весьма пользующийся популярностью скрипт для парсинга CSV в массив.
В качестве второго параметра вы сможете указать иной разделитель, не запятую, к примеру «;». Предлагаю создать маленькую обертку на Javascript, чтоб нам не приходилось писать всякий раз кучу кода, а можно было вызывать малогабаритную и комфортную функцию.
Итоговый скрипт чтения и парсинга файла формата CSV для iMacros+JS:
В консоли мы лицезреем аккуратненько распарсенный массив с нашей таблицей.
Сохранение двумерного Javascript-массива в CSV в iMacros
Считывать содержимое csv-файлов мы научились. Отсюда возникает вопросец, как же выполнить оборотное преобразование массива в текст? По сути, здесь нету ничего сложного.
Давайте воспользуемся последующей функцией:
Принципиальное примечание: CSV-файлы необязательно должны употреблять запятую в качестве разделителя, в большей части мира употребляется точка с запятой(;).
Excel 2016 корректно работает с вашими региональными опциями и употребляет тот разделитель, который указан в панели управления в Настройках региона->Доп параметры->Разделитель частей списков . В Excel 2010 на британской винде, у меня по дефлоту стояла запятая в качестве разделителя, вы его сможете поменять. Потому, если вдруг вы сгенерировали CSV-файл, а он у вас в Excel открылся в одной ячейке, сперва проверьте какие разделители вы используете и какие по дефлоту употребляет ваша операционная система.
Открываем CSV-файл онлайн
Принципиально! Табличные документы текстового формата CSV показываются на разных устройствах по-разному, как и в разных средах просмотра либо редактирования. Все это из-за того, что расширение стандартизировано не вполне. Мысль употреблять для разделения строк и полей запятые явна, но появляются конфликты, когда начальные данные содержат подобные знаки либо переводы строк. Конкретно потому разные онлайн-сервисы могут показывать CSV-файлы незначительно не так, как хотелось бы юзеру.
Метод 1: BeCSV
Онлайн-сервисов, которые бы дозволили не то чтоб редактировать, а хотя бы просто открыть файлы CSV, не настолько не мало, но они есть и ресурс BeCSV — один из их. Инструмент дозволяет, как просматривать документы, так и преобразовать их в такие форматы: таблица HTML, Excel (*.xls), HTML-код, SQL-запрос, KML, XML, YAML, TXT, TSV либо JSON-строка.
Преобразование в некие из обозначенных форматов доступна и в оборотном направлении. Сервис также предоставляет и инструмент для просмотра CSV. Для примера в первом методе и дальше будет употребляться сделанный в программке Microsoft Office Excel 2007 документ, который состоит из 3-х строк и 4 колонок, заполненных цифрами от 0 до 11, и загружается в разрешении CSV с разделителями в виде запятых. {Инструкция} по работе с инвентарем сервиса тщательно изложена ниже:
-
Откройте веб-ресурс, перейдя по ссылке выше. На главной страничке расположен перечень инструментов, также описание неких конвертеров и форматов. Нам нужен перечень, находящийся в левой стороне экрана. В нем в самом крайнем разделе «CSV Tool» изберите пункт «CSV Viewer».
Принципиально! Сервис дозволяет редактировать значения в таблице, но сохранить их недозволено. Не совершенно понятно, для чего это изготовлено. Также есть один недочет: номера строк в поле просмотра показываются нормально, а их нумерация начинается с 0. Подписи же столбцов заменяются данными из первой строчки загружаемого файла. Основное не запутаться.
Метод 2: ConvertCSV
Очередной сервис, позволяющий не только лишь преобразовать CSV-файлы в документы разных форматов, да и просматривать и даже редактировать их. Интерфейс веб-сайта очень припоминает дизайн первого рассмотренного инструмента, но различается огромным количеством опций для загрузки и выгрузки файлов. Механизм работы с ConvertCSV последующий:
-
Опосля загрузки веб-сайта в 3-ем блоке инструментов изберите 1-ый пункт «Viewer & Editor».
Данный онлайн-сервис владеет уже наиболее продвинутыми опциями просмотра CSV-файлов и даже дозволяет редактировать и сохранять их как в родном формате, так и в расширении XLSX, с которым работает Excel.
Метод 3: Codebeautify
Очередной онлайн-сервис, который кроме иных инструментов для работы с JSON-строками, HTML-кодом и запросами SQL дает также набор конвертеров для CSV-файлов и фактически функции для их просмотра. {Инструкция} по работе с веб-сайтом представлена ниже:
-
Дождитесь загрузки странички и пролистайте ее вниз до списков инструментов для работы с документами. Найдите там раздел «CSV Tools» и изберите пункт «CSV Viewer». Он 1-ый в наборе.
Это очень обычной инструмент для просмотра CSV-документов без способности их редактирования и доп функций выгрузки. Тем не наименее, если нужно просто выяснить, что находится снутри файла, Codebeautify подступает.
Метод 4: Viewer от Groupdocs
Очередной способ открытия CSV с помощью браузера. Изюминка этого онлайн-сервиса по сопоставлению с прошлыми ресурсами последующая: он преобразует CSV в графический файл для просмотра и не поддерживает изменение шифровки. Но если необходимо просто выяснить, что находится снутри документа, то он подойдет.
-
Войдите на веб-сайт Groupdocs в раздел с инвентарем для просмотра всех поддерживаемых форматов документов. Ссылка на него представлена выше. Кликните левой клавишей мыши в любом месте активного поля «Click or drop your file here».