91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 11KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-06
  • 語言: C/C++
  • 標簽: C++??excel??linux??

資源簡介

使用VC/C++生成excel的方式有很多,但是絕大部分要么是簡單的csv文件,要么需要COM并已經安裝ms excel,局限性比較大。 我這里提供一種使用C++編寫以html腳本的方式生成xls文件的方法。不使用任何非C++標準庫,支持字體大小、顏色,單元格合并、背景色、邊框等設置。 generate_excel.vcproj為在vs2005下的工程文件,如果需要在vc6或Linux等其他編譯環境下使用只需新建工程將.h文件和.cpp文件導入即可編譯。 generate_excel |------include | |----gen_excel_file.h | |----input_data.h | |------cpp | |----gen_excel_file.cpp //excel文件操作類 | |----input_data.cpp //生成虛擬數據 | |----main.cpp //調用gen_excel_file類 | |------iofiles | |----head.txt //格式定義文件 | |------generate_excel.vcproj //vc2005工程文件 |------表格.xls //輸出文件

資源截圖

代碼片段和文件信息

//////////////////////////////////////////////////////////////////////////
//
// :gen_excel_file類,excel操作類
// by?leo9909@csdn.net
//
//////////////////////////////////////////////////////////////////////////

#include?“gen_excel_file.h“

using?namespace?generate_excel;

//--------------------------------------
gen_excel_file::gen_excel_file(void)
{
m_xls?=?NULL;
}

gen_excel_file::~gen_excel_file(void)
{
release();
}
gen_excel_file::gen_excel_file(const?gen_excel_file?&r)
{
}
gen_excel_file?&gen_excel_file::operator=(const?gen_excel_file?&r)
{
return?*this;
}
//----------------

void?gen_excel_file::release()
{
if?(m_xls)
{
fclose(m_xls);
m_xls?=?NULL;
}
}

//--------------------------------------
int?gen_excel_file::create_file(const?char?*?file_name)
{
release();
m_xls?=?fopen(file_name?“w+“);

if?(!m_xls)
return?ERR_OPEN_FAILED;

//1.
fprintf(m_xls?FILE_HTML_title);

//2.
if?(load_xls_head())
return?ERR_WRITE_HEAD_FAILED;


//3.
fprintf(m_xls?FILE_BODY_title);
fprintf(m_xls?FILE_TABLE_title);

return?SUCCESS;
}

int?gen_excel_file::load_xls_head()
{
CHECK_BUFFER_WITH_RETURN;
FILE?*p_head?=?fopen(HEAD_TEXT_FILE?“r“);

if?(!p_head)
return?ERR_WRITE_HEAD_FAILED;

copy_text(p_head?m_xls);
fclose(p_head);

return?SUCCESS;
}

int?gen_excel_file::end_file()
{
CHECK_BUFFER_WITH_RETURN;
fprintf(m_xls?“\n“);
fprintf(m_xls?“\n“);
fprintf(m_xls?“\n“);

release();
return?SUCCESS;
}

//-------------------------------

void?gen_excel_file::set_column_width(int?span_cols?int?width_pels)
{
CHECK_BUFFER;

if?(span_cols>1)
fprintf(m_xls?“?yle=\‘mso-width-source:userset;mso-width-alt:%d\‘>\n“?width_pels?span_cols?width_pels*32);
else
fprintf(m_xls?“?yle=\‘mso-width-source:userset;mso-width-alt:%d\‘>\n“?width_pels?width_pels*32);
}

//----------------------------------------
void?gen_excel_file::start_new_line(float?height)
{
CHECK_BUFFER;
fprintf(m_xls?“?yle=\‘mso-height-source:userset;height:%.2fpt\‘>\n“?height);
}

void?gen_excel_file::end_curr_line()
{
CHECK_BUFFER;
fprintf(m_xls?“?\n“);
}

//------------------------------------------
void?gen_excel_file::fill_cell(const?char*?cell_tag?int?val)
{
CHECK_BUFFER;
fprintf(m_xls?“%s%d\n“?cell_tag?val);
}
void?gen_excel_file::fill_cell(const?char*?cell_tag?float?val)
{
CHECK_BUFFER;
fprintf(m_xls?“%s%f\n“?cell_tag?val);
}
void?gen_excel_file::fill_cell(const?char*?cell_tag?const?char*?val)
{
CHECK_BUFFER;
fprintf(m_xls?“%s%s\n“?cell_tag?val);
}

//-----------------------------------------
int?gen_excel_file::copy_text(FILE?*pSource?FILE?*pDest)
{
if?(!pSource?&&?!pDest)
return?FAILED;

char?c;
while?(!feof(pSource))
{
c?=?fgetc(pSource);
fputc(c?pDest);
}

if(c?==?-1) //去掉來自源文件尾的文件結

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????3123??2009-11-17?10:47??generate_excel\cpp\gen_excel_file.cpp

?????文件???????1201??2009-11-17?10:48??generate_excel\cpp\input_data.cpp

?????文件???????4991??2009-11-17?10:49??generate_excel\cpp\main.cpp

????..A..H.?????12800??2009-11-17?11:14??generate_excel\generate_excel.suo

?????文件???????4416??2009-11-17?10:11??generate_excel\generate_excel.vcproj

?????文件???????2465??2009-11-17?10:47??generate_excel\include\gen_excel_file.h

?????文件????????566??2009-11-17?10:47??generate_excel\include\input_data.h

?????文件???????8085??2009-11-16?15:58??generate_excel\iofiles\head.txt

?????文件??????16988??2009-11-17?11:14??generate_excel\表格.xls

?????目錄??????????0??2009-11-17?11:13??generate_excel\cpp

?????目錄??????????0??2009-11-17?11:13??generate_excel\include

?????目錄??????????0??2009-11-17?11:13??generate_excel\iofiles

?????目錄??????????0??2009-11-17?11:14??generate_excel

-----------?---------??----------?-----??----

????????????????54635????????????????????13


評論

共有 條評論