Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.fds-net.ru/showflat.php?Number=6585094&src=arc&showlite=
Дата изменения: Unknown
Дата индексирования: Tue Apr 12 18:10:56 2016
Кодировка: Windows-1251
Из программы Си++ заполнить Excel-файл - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
Technical >> Development (Archive)

Страницы: 0 | 20 | показать все | след. страница
zabeyka
Гадкий утенок

Рег.: 08.11.2002
Сообщений: 2647
Из: Ingress
Рейтинг: 2703
  Из программы Си++ заполнить Excel-файл
      11.09.2007 12:49
 

то есть банально есть массив - его нужно перенести в Excel-файл. если кто-то делал это, спасибо за совет или пример кода.
Большая просьба: если и посылать, то хотя бы не в гугл, а на ссылки с инфой.
Спасибо.



Пули Дизита не коснутся тела Морана Шетланда!!!
Bishop
Супа

Рег.: 04.10.2006
Сообщений: 396
Рейтинг: 71
  Re: Из программы Си++ заполнить Excel-файл [re: zabeyka]
      11.09.2007 13:05
 

Значения в строках разделены табуляцией
Новые строки - просто новые строки в текстовом файле.

penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: Bishop]
      11.09.2007 13:24
 

Я бы даже сказал,
http://en.wikipedia.org/wiki/Comma-separated_values:

CSV is a delimited data format that has fields/columns separated by the comma character and records/rows separated by newlines. Fields that contain a special character (comma, newline, or double quote), must be enclosed in double quotes. However, if a line contains a single entry which is the empty string, it may be enclosed in double quotes. If a field's value contains a double quote character it is escaped by placing another double quote character next to it. The CSV file format does not require a specific character encoding, byte order, or line terminator format.

Each record is one line terminated by a line feed (ASCII/LF=0x0A) or a carriage return and line feed pair (ASCII/CRLF=0x0D 0x0A), however, line-breaks can be embedded.
Fields are separated by commas.
1997,Ford,E350
Leading and trailing spaces or tabs, adjacent to commas, are trimmed. This requirement is contentious and in fact is specifically prohibited by RFC 4180, which states, "Spaces are considered part of a field and should not be ignored."
1997, Ford , E350
same as
1997,Ford,E350
Fields with embedded commas must be delimited with double-quote characters.
1997,Ford,E350,"Super, luxurious truck"
Fields with embedded double-quote characters must be delimited with double-quote characters, and the embedded double-quote characters must be represented by a pair of double-quote characters.
1997,Ford,E350,"Super ""luxurious"" truck"
Fields with embedded line breaks must be delimited by double-quote characters.
1997,Ford,E350,"Go get one now
they are going fast"
Fields with leading or trailing spaces must be delimited by double-quote characters. (See comment about leading and trailing spaces above.)
1997,Ford,E350," Super luxurious truck "
Fields may always be delimited by double-quote characters, whether necessary or not.
"1997",Ford,E350
The first record in a csv file may contain column names in each of the fields.
Year,Make,Model
1997,Ford,E350
2000,Mercury,Cougar






Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 13:25
 

Пример:
В ответ на:

year,brand,model,comment,price
1997,Ford,E350,"ac, abs, moon",3000.00
1999,Chevy,"Venture ""Extended Edition""",,4900.00
1996,Jeep,Grand Cherokee,"MUST SELL!
air, moon roof, loaded",4799.00






Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
Storm
:)

Рег.: 09.09.2004
Сообщений: 3301
Из: hane.ru
Рейтинг: 132
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 13:52
 

Только в Excel`е вместо ',' используется почему-то ';'.




Ecchi nano wa ikenai to omoimasu!
==Media.Anime==
zabeyka
Гадкий утенок

Рег.: 08.11.2002
Сообщений: 2647
Из: Ingress
Рейтинг: 2703
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 14:07
 

то есть мона прям просто так:
FILE * Orders;
Orders = fopen("order.xls","w");
fprintf(Orders,"year,brand,model,comment,price");
?



Пули Дизита не коснутся тела Морана Шетланда!!!
penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: zabeyka]
      11.09.2007 14:15
 

Ну типа того, только
В ответ на:

fprintf(Orders,concat("year,brand,model,comment,price",EOL));



А потом - данные (и не забудь их ескейпить!)



Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
zabeyka
Гадкий утенок

Рег.: 08.11.2002
Сообщений: 2647
Из: Ingress
Рейтинг: 2703
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 14:20
 

спасиб всем! у меня корректно получилось вот с каким кодом:
FILE * f;
f = fopen("f.xls","w");
fprintf(f,"year\tbrand\tmodel\tcomment\tprice");
fclose(f);



Пули Дизита не коснутся тела Морана Шетланда!!!
penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: zabeyka]
      11.09.2007 14:29
 

Ага, только это не xls, а "Text (Tab delimited)".
Тебе очень повезло, что автоопределение типа сработало правильно, и вдвойне повезло, что оно вообще сработало для файла с расширением .xls.
Правильное поведение программы просмотра в таком случае - сказать "у вас тут в этом .xls лежит хз что, я не знаю, что это - уберите от меня свой битый .xls-файл, и дайте что-нибудь нормальное".
Так что не трахай себе и другим мозги, а сделай csv.



Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
Mike
Ызарг

Рег.: 02.11.2002
Сообщений: 8098
Рейтинг: 2147
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 14:32
 

Quote:

Так что не трахай себе и другим мозги, а сделай csv.



А завтра ему понадобится форматирование: выделение жЫрным шрифтом, таблички... И пойдет он читать про COM и ExcellApplication.

penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: Mike]
      11.09.2007 14:33
 

В ответ на:

А завтра ему понадобится форматирование: выделение жЫрным шрифтом, таблички...



Надо полагать, в Text (Tab Delimited) это можно сделать без проблем?
Тогда уж пусть делает настоящий экселевский файл, а не такую хрень, названную как экселевский файл.



Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
DarkGrayМодератор
Carpal Tunnel

Рег.: 30.09.2002
Сообщений: 31411
Рейтинг: 8953
  Re: Из программы Си++ заполнить Excel-файл [re: Mike]
      11.09.2007 14:36
 

> И пойдет он читать про COM и ExcellApplication.

лучше пусть читает про excelml, благо 2003 excel уже более менее у всех стоит.

zabeyka
Гадкий утенок

Рег.: 08.11.2002
Сообщений: 2647
Из: Ingress
Рейтинг: 2703
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 15:54
 

Да в моей проге ничего сложного не нужно - достаточно заполнить и отправить эксель-файл. А он, как показала практика, нормально читабелен.
(да и изначально я, в принципе и спрашивал об этом, потому что в тот же ворд фиг пойми как грамотно запихать обычную тесктовую инфу)
эксель сейчас мой файл прочитал и не ругнулся - большего мне от него не нужно



Пули Дизита не коснутся тела Морана Шетланда!!!
penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: zabeyka]
      11.09.2007 15:57
 

В ответ на:

эксель сейчас мой файл прочитал и не ругнулся - большего мне от него не нужно



О других людях ты не думаешь?
Или этот файл - для внутреннего употребления?



Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
zabeyka
Гадкий утенок

Рег.: 08.11.2002
Сообщений: 2647
Из: Ingress
Рейтинг: 2703
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 16:05
 

на главном сервере файл прочитали - большего от него не надо
все равно не у всех стоит эксель, поэтому распечатка на других компах будет из txt-файла



Пули Дизита не коснутся тела Морана Шетланда!!!
penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: zabeyka]
      11.09.2007 16:10
 

Ты сейчас ведешь себя очень глупо. "Пусть у меня все через жопу и не по стандарту - но в одном месте работает, и хуй с ним". Ладно бы еще, если бы сделать нормально требовало каких-то огромных усилий - но сейчас сделать нормально и сделать через жопу требует одинаковых затрат.
В ответ на:

все равно не у всех стоит эксель, поэтому распечатка на других компах будет из txt-файла



Ну так сделай .csv!



Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
nelapsi
the wumbologist

Рег.: 10.11.2003
Сообщений: 10758
Из: Orbis Tertius
Рейтинг: 10651
  Re: Из программы Си++ заполнить Excel-файл [re: penartur2]
      11.09.2007 16:51
 


 
В ответ на:

Пусть у меня все через жопу и не по стандарту



все правильно - он же пишет под винду для ескеля



Your touch will set me free
penartur2

Рег.: 16.06.2005
Сообщений: 54495
Рейтинг: 429
  Re: Из программы Си++ заполнить Excel-файл [re: nelapsi]
      11.09.2007 16:55
 

В ответ на:

все правильно



Это у тебя предрассудки какие-то.
Да, винда более мягко относится к ошибкам программистов, чем другие ОС. Но это не повод считать, что такие ошибки нужно совершать.



Я ушел на новый форум.
Там правовое государство. А еще можно удобно листать аплоад ;)
fgo
Pooh-Bah

Рег.: 18.04.2006
Сообщений: 2021
Рейтинг: 1684
  Re: Из программы Си++ заполнить Excel-файл [re: Storm]
      12.09.2007 00:31
 

В ответ на:

Только в Excel`е вместо ',' используется почему-то ';'



Используется символ, указанный как Разделитель элементов списка в Панель управления/Язык и региональные стандарты/Настройка на закладке Числа. Этот же символ нужно писать в формулах Excel, когда разделяешь параметры.

den
IQ Test Negative

Рег.: 18.09.2003
Сообщений: 2609
Рейтинг: 1027
  Re: Из программы Си++ заполнить Excel-файл [re: fgo]
      12.09.2007 10:33
 

А типа в природе существует эксель неспособный прочитать такой текстовый файл ?

Страницы: 0 | 20 | показать все | след. страница

Technical >> Development (Archive)

Дополнительная информация
1 зарегистрированных и 0 анонимных пользователей просматривают этот форум.

Модераторы:  DarkGray 

Печать темы
>>
Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в