C语言 gcc

C语言 gcc,第1张

自己写个 strlwr 吧

char *strlwr(char *str)

{

char *p

p = str

while(*p)

{

if(*p>='A'或镇 &&*p<旦团携='模伏A')

{

*p += 32

}

p++

}

}

int CheckLetter(char p)

{

if ((p >= '顷扮a' &&p <= 'z') || (p >= 'A' &&p <= '雀耐灶Z'))

{

return 1

}

else

{

return 0

}

}

void Trim(char oldWord[], char newWord[])

{

int i = 0

int j = 0

int len = strlen(oldWord)

for (i = 0i <leni++)

{

if (1 == CheckLetter(oldWord[i]))

{

newWord[j] = oldWord[i]

j++

}

else if((i >0) &&(i <亩凳 len) &&(oldWord[i] == ' ') &&(1 == CheckLetter(oldWord[i - 1])) &&(1 == CheckLetter(oldWord[i + 1])))

{

newWord[j] = oldWord[i]

j++

}

}

printf("%s\n", newWord)

}

方法很多,这里以从dataview导出excel为例:

先从数据库中取出数据到dataview

public void OutputExcel(DataView dv,string str)

{

//dv为要输出到Excel的数据,str为标题名称

GC.Collect()

Application excel// = new Application()

int rowIndex=4

int colIndex=1

_Workbook xBk

_Worksheet xSt

excel= new ApplicationClass()

xBk = excel.Workbooks.Add(true)

xSt = (_Worksheet)xBk.ActiveSheet

//

//取得标题

/搜衫亮/

foreach(DataColumn col in dv.Table.Columns)

{

colIndex++

excel.Cells[4,colIndex] = col.ColumnName

xSt.get_Range(excel.Cells[4,colIndex],excel.Cells[4,colIndex]).HorizontalAlignment = XlVAlign.xlVAlignCenter//设置标题格式为居中对齐

}

//

//取得表格中的数据

//

foreach(DataRowView row in dv)

{

rowIndex ++

colIndex = 1

foreach(DataColumn col in dv.Table.Columns)

{

colIndex ++

if(col.DataType == System.Type.GetType("System.DateTime"))

{

excel.Cells[rowIndex,colIndex] = (Convert.ToDateTime(row[col.ColumnName].ToString())).ToString("yyyy-MM-dd")

xSt.get_Range(excel.Cells[rowIndex,colIndex],excel.Cells[rowIndex,colIndex]).HorizontalAlignment = XlVAlign.xlVAlignCenter//设置日期型世宽的字段格式为居中对齐

}

else

if(col.DataType == System.Type.GetType("System.String"))

{

excel.Cells[rowIndex,colIndex] = "'"+row[col.ColumnName].ToString()

xSt.get_Range(excel.Cells[rowIndex,colIndex],excel.Cells[rowIndex,colIndex]).HorizontalAlignment = XlVAlign.xlVAlignCenter//设置字符型的字段格式为塌镇居中对齐

}

else

{

excel.Cells[rowIndex,colIndex] = row[col.ColumnName].ToString()

}

}

}

//

//加载一个合计行

//

int rowSum = rowIndex + 1

int colSum = 2

excel.Cells[rowSum,2] = "合计"

xSt.get_Range(excel.Cells[rowSum,2],excel.Cells[rowSum,2]).HorizontalAlignment = XlHAlign.xlHAlignCenter

//

//设置选中的部分的颜色

//

xSt.get_Range(excel.Cells[rowSum,colSum],excel.Cells[rowSum,colIndex]).Select()

xSt.get_Range(excel.Cells[rowSum,colSum],excel.Cells[rowSum,colIndex]).Interior.ColorIndex = 19//设置为浅黄色,共计有56种

//

//取得整个报表的标题

//

excel.Cells[2,2] = str

//

//设置整个报表的标题格式

//

xSt.get_Range(excel.Cells[2,2],excel.Cells[2,2]).Font.Bold = true

xSt.get_Range(excel.Cells[2,2],excel.Cells[2,2]).Font.Size = 22

//

//设置报表表格为最适应宽度

//

xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,colIndex]).Select()

xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,colIndex]).Columns.AutoFit()

//

//设置整个报表的标题为跨列居中

//

xSt.get_Range(excel.Cells[2,2],excel.Cells[2,colIndex]).Select()

xSt.get_Range(excel.Cells[2,2],excel.Cells[2,colIndex]).HorizontalAlignment = XlHAlign.xlHAlignCenterAcrossSelection

//

//绘制边框

//

xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,colIndex]).Borders.LineStyle = 1

xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,2]).Borders[XlBordersIndex.xlEdgeLeft].Weight = XlBorderWeight.xlThick//设置左边线加粗

xSt.get_Range(excel.Cells[4,2],excel.Cells[4,colIndex]).Borders[XlBordersIndex.xlEdgeTop].Weight = XlBorderWeight.xlThick//设置上边线加粗

xSt.get_Range(excel.Cells[4,colIndex],excel.Cells[rowSum,colIndex]).Borders[XlBordersIndex.xlEdgeRight].Weight = XlBorderWeight.xlThick//设置右边线加粗

xSt.get_Range(excel.Cells[rowSum,2],excel.Cells[rowSum,colIndex]).Borders[XlBordersIndex.xlEdgeBottom].Weight = XlBorderWeight.xlThick//设置下边线加粗

//

//显示效果

//

excel.Visible=true

//xSt.Export(Server.MapPath(".")+""+this.xlfile.Text+".xls",SheetExportActionEnum.ssExportActionNone,Microsoft.Office.Interop.OWC.SheetExportFormat.ssExportHTML)

xBk.SaveCopyAs(Server.MapPath(".")+""+this.xlfile.Text+".xls")

ds = null

xBk.Close(false, null,null)

excel.Quit()

System.Runtime.InteropServices.Marshal.ReleaseComObject(xBk)

System.Runtime.InteropServices.Marshal.ReleaseComObject(excel)

System.Runtime.InteropServices.Marshal.ReleaseComObject(xSt)

xBk = null

excel = null

xSt = null

GC.Collect()

string path = Server.MapPath(this.xlfile.Text+".xls")

System.IO.FileInfo file = new System.IO.FileInfo(path)

Response.Clear()

Response.Charset="GB2312"

Response.ContentEncoding=System.Text.Encoding.UTF8

// 添加头信息,为"文件下载/另存为"对话框指定默认文件名

Response.AddHeader("Content-Disposition", "attachmentfilename=" + Server.UrlEncode(file.Name))

// 添加头信息,指定文件大小,让浏览器能够显示下载进度

Response.AddHeader("Content-Length", file.Length.ToString())

// 指定返回的是一个不能被客户端读取的流,必须被下载

Response.ContentType = "application/ms-excel"

// 把文件流发送到客户端

Response.WriteFile(file.FullName)

// 停止页面的执行

Response.End()

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/12284116.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存