📄 cgihtml.txt
字号:
函数原型:
int CGIHtmlLoadTemplateSafely( char *filename , char **template_buf , long *template_buf_size );
输入参数:
char *filename 外部HTML模板文件名
char **template_buf 装载缓冲区首地址的指针
long *template_buf_size 当前装载缓冲区大小变量指针
返回值:
成功,返回 0
失败,返回 -1
详细描述与注意事项:
如果预备装载缓冲区比实际模板大小要小或者预备装载缓冲区指针为NULL,则先realloc缓冲区再装载,同时把新的大小保存到缓冲区大小变量中,否则只装载
示例代码:
char *pcTemplateBuffer = NULL ;
long lTemplateSize = 0 ;
int iret ;
iret = CGIHtmlLoadTemplateSafely( "template.html" , &pcTemplateBuffer , &lTemplateSize ) ;
...
free(pcTemplateBuffer);
相关函数:
CGIHtmlLoadTemplate
·CGIHtmlAddTemplateLongTag
向HTML模板替换宏链表中添加一个long类型的项
函数原型:
BOOL CGIHtmlAddTemplateLongTag( SList **listHtmlTemplateTag , char *tag , long l );
输入参数:
listHtmlTemplateTag 指向HTML模板替换宏链表首地址的指针
char *tag 替换宏键
long l 替换宏值
返回值:
成功,返回 TRUE
失败,返回 FALSE
详细描述与注意事项:
HTML模板替换宏链表每一个结点都挂接了一个tag-value结构
示例代码:
SList *plistTemplateTag = NULL ;
BOOL bret ;
plistTemplateTag = CGIHtmlTemplateTagListInitial() ;
bret = CGIHtmlAddTemplateLongTag( &plistTemplateTag , "$LONG$" , 1000 ) ;
...
CGIHtmlTemplateTagListDestroy( &plistTemplateTag );
相关函数:
CGIHtmlAddTemplateDoubleTag , CGIHtmlAddTemplateStringTag
·CGIHtmlAddTemplateDoubleTag
向HTML模板替换宏链表中添加一个double类型的项
函数原型:
BOOL CGIHtmlAddTemplateDoubleTag( SList **listHtmlTemplateTag , char *tag , double d );
输入参数:
listHtmlTemplateTag 指向HTML模板替换宏链表首地址的指针
char *tag 替换宏键
double d 替换宏值
返回值:
成功,返回 TRUE
失败,返回 FALSE
详细描述与注意事项:
HTML模板替换宏链表每一个结点都挂接了一个tag-value结构
示例代码:
SList *plistTemplateTag = NULL ;
BOOL bret ;
plistTemplateTag = CGIHtmlTemplateTagListInitial() ;
bret = CGIHtmlAddTemplateDoubleTag( &plistTemplateTag , "$DOUBLE$" , 3.1415926 ) ;
...
CGIHtmlTemplateTagListDestroy( &plistTemplateTag );
相关函数:
CGIHtmlAddTemplateLongTag , CGIHtmlAddTemplateStringTag
·CGIHtmlAddTemplateStringTag
向HTML模板替换宏链表中添加一个String类型的项
函数原型:
BOOL CGIHtmlAddTemplateStringTag( SList **listHtmlTemplateTag , char *tag , char *str );
输入参数:
listHtmlTemplateTag 指向HTML模板替换宏链表首地址的指针
char *tag 替换宏键
char *str 替换宏值
返回值:
成功,返回 TRUE
失败,返回 FALSE
详细描述与注意事项:
HTML模板替换宏链表每一个结点都挂接了一个tag-value结构
示例代码:
SList *plistTemplateTag = NULL ;
BOOL bret ;
plistTemplateTag = CGIHtmlTemplateTagListInitial() ;
bret = CGIHtmlAddTemplateStringTag( &plistTemplateTag , "$STRING$" , "我被替换啦" ) ;
...
CGIHtmlTemplateTagListDestroy( &plistTemplateTag );
相关函数:
CGIHtmlAddTemplateLongTag , CGIHtmlAddTemplateDoubleTag
·CGIHtmlProcessTemplate
用HTML模板替换宏链表处理HTML模板
函数原型:
int CGIHtmlProcessTemplate( SList *listHtmlTemplateTag , char *template_buf , char *html_buf );
输入参数:
listHtmlTemplateTag 指向HTML模板替换宏链表首地址的指针
char *template_buf HTML模板缓冲区
char *html_buf HTML输出代码缓冲区
返回值:
成功,返回 0
失败,返回 <0
详细描述与注意事项:
(无)
示例代码:
char acTemplateBuffer[ 1024 + 1 ] ; /* 声明模板缓冲区 */
char acHtmlBuffer[ 1024 + 1 ] ; /* HTML缓冲区 */
SList *plistTemplateTag = NULL ;
BOOL bret ;
int iret ;
plistTemplateTag = CGIHtmlTemplateTagListInitial() ;
bret = CGIHtmlAddTemplateStringTag( &plistTemplateTag , "$STRING$" , "我被替换啦" ) ;
iret = CGIHtmlLoadTemplate( "template.html" , acTemplateBuffer ) ;
iret = CGIHtmlProcessTemplate( plistTemplateTag , acTemplateBuffer , acHtmlBuffer ) ;
...
CGIHtmlTemplateTagListDestroy( &plistTemplateTag );
相关函数:
CGIHtmlProcessTemplateSafely
·CGIHtmlProcessTemplateSafely
安全的用HTML模板替换宏链表处理HTML模板
函数原型:
int CGIHtmlProcessTemplateSafely( SList *listHtmlTemplateTag , char *template_buf , long *template_buf_size , char **html_buf , long *html_buf_size );
输入参数:
listHtmlTemplateTag 指向HTML模板替换宏链表首地址的指针
char *template_buf HTML模板缓冲区
long *template_buf_size HTML模板缓冲区数据长度变量指针
char **html_buf 指向HTML输出代码缓冲区首地址的指针
long *html_buf_size HTML输出代码缓冲区空间大小变量指针
返回值:
成功,返回 0
失败,返回 <0
详细描述与注意事项:
(无)
示例代码:
char acTemplateBuffer[ 1024 + 1 ] ; /* 声明模板缓冲区 */
long lTempalteLen ;
char *pcHtmlBuffer = NULL ; /* HTML缓冲区指针 */
long lHtmlBuuferSize = 0 ;
SList *plistTemplateTag = NULL ;
BOOL bret ;
int iret ;
plistTemplateTag = CGIHtmlTemplateTagListInitial() ;
bret = CGIHtmlAddTemplateStringTag( &plistTemplateTag , "$STRING$" , "我被替换啦" ) ;
iret = CGIHtmlLoadTemplate( "template.html" , acTemplateBuffer ) ;
lTempalteLen = strlen(acTemplateBuffer) ;
iret = CGIHtmlProcessTemplateSafely( plistTemplateTag , acTemplateBuffer , &lTempalteLen , &pcHtmlBuffer , &lHtmlBuuferSize ) ;
...
CGIHtmlTemplateTagListDestroy( &plistTemplateTag );
free(pcHtmlBuffer);
相关函数:
CGIHtmlProcessTemplate
·CGIHtmlProcessHtmlByUBB
处理HTML缓冲区中的UBB代码转换成HTML代码
函数原型:
int CGIHtmlProcessHtmlByUBB( char *html_buf );
输入参数:
char *html_buf HTML缓冲区
返回值:
成功,返回 0
失败,返回 -1
详细描述与注意事项:
(无)
示例代码:
char acHtmlBuffer[ 1024 + 1 ] ; /* HTML缓冲区 */
int iret ;
iret = CGIHtmlLoadTemplate( "template.html" , acHtmlBuffer ) ;
iret = CGIHtmlProcessHtmlByUBB( acHtmlBuffer ) ;
相关函数:
CGIHtmlProcessHtmlByUBBSafely
·CGIHtmlProcessHtmlByUBBSafely
安全的处理HTML缓冲区中的UBB代码转换成HTML代码
函数原型:
int CGIHtmlProcessHtmlByUBBSafely( char **html_buf , long *html_buf_size );
输入参数:
char **html_buf 指向HTML缓冲区首地址的指针
long *html_buf_size HTML缓冲区大小变量指针
返回值:
成功,返回 0
失败,返回 -1
详细描述与注意事项:
(无)
示例代码:
char *pcHtmlBuffer = NULL ; /* HTML缓冲区指针 */
long lHtmlBufferSize = 0 ;
int iret ;
iret = CGIHtmlLoadTemplateSafely( "ubb.txt" , &pcHtmlBuffer , &lHtmlBufferSize ) ;
iret = CGIHtmlProcessHtmlByUBBSafely( pcHtmlBuffer , &lHtmlBufferSize ) ;
free(pcHtmlBuffer);
相关函数:
CGIHtmlProcessHtmlByUBB
·CGIHtmlProcessTextToHtml
处理HTML缓冲区中的文本代码转换成HTML代码
函数原型:
int CGIHtmlProcessTextToHtml( char *html_buf );
输入参数:
char *html_buf HTML缓冲区
返回值:
成功,返回 0
失败,返回 -1
详细描述与注意事项:
处理前,HTML缓冲区中的所有数据都被假定为文本,输出的是转换后的HTML代码
示例代码:
char acHtmlBuffer[ 1024 + 1 ] ; /* HTML缓冲区 */
int iret ;
iret = CGIHtmlLoadTemplate( "template.html" , acHtmlBuffer ) ;
iret = CGIHtmlProcessTextToHtml( acHtmlBuffer ) ;
相关函数:
CGIHtmlProcessTextToHtmlSafely
·CGIHtmlProcessTextToHtmlSafely
安全的处理HTML缓冲区中的文本代码转换成HTML代码
函数原型:
int CGIHtmlProcessTextToHtmlSafely( char **html_buf , long *html_buf_size );
输入参数:
char **html_buf 指向HTML缓冲区首地址的指针
long *html_buf_size HTML缓冲区大小变量指针
返回值:
成功,返回 0
失败,返回 -1
详细描述与注意事项:
(无)
示例代码:
char *pcHtmlBuffer = NULL ; /* HTML缓冲区指针 */
long lHtmlBufferSize = 0 ;
int iret ;
iret = CGIHtmlLoadTemplateSafely( "text.txt" , &pcHtmlBuffer , &lHtmlBufferSize ) ;
iret = CGIHtmlProcessTextToHtmlSafely( pcHtmlBuffer , &lHtmlBufferSize ) ;
free(pcHtmlBuffer);
相关函数:
CGIHtmlProcessTextToHtml
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -