#c #arrays #string #format #mbed
#c #массивы #строка #форматировать #mbed
Вопрос:
Я пытался выяснить, каким был бы наилучший способ сделать это, но пока не совсем нашел ответ. У меня есть массив с плавающей точкой, полный данных, собранных с инерциального датчика, и я хотел бы поместить его в правильный формат и вывести в файл CSV. Для хранения файла я использую микроконтроллер mbed с локальной файловой системой. В данный момент меня смущает та часть, которая касается правильного выбора формата. Я бы хотел, чтобы значения моего гироскопа / акселерометра отображались в строках, таких как:
gx1, gy1, gz1, ax1, ay1, az1
gx2, gy2, gz2, ax2, ay2, az2
gx3, gy3, gz3, ax3, ay3, az3
Я думаю, что эти значения сначала нужно преобразовать в char перед записью в файл, поэтому мне нужно будет сделать это и сохранить их в новом массиве типа char. Вот тут я и запутался, потому что я не просто хочу скопировать данные в этот новый массив все сразу (думаю использовать цикл for и spritf ()), но я также хочу, чтобы они были отформатированы так, как показано выше, с правильными разрывами между строками.
Функция, которая записывает содержимое массива в файл, принимает массив, размер его типов, размер массива и файловый объект.
fwrite(converted_array, sizeof(char), sizeof(converted_array), FileObject);
Какой был бы наилучший способ убедиться, что содержимое массива отформатировано так, как я хочу?
Комментарии:
1. Возможно
fprintf
?2. Форматированный вывод в CSV на C не найден в Интернете? 🙂 🙂 🙂 загуглите «c write csv»
3. OT: Хотя CSV, вероятно, представляет собой «Значения, разделенные запятыми», я обычно разделяю столбцы с помощью
't'
. Excel (а также множество других инструментов) также нравится это.