2013年10月17日 星期四

C# Word 寫入

加入參考: com > microsoft.word

Directory.CreateDirectory("D:/");  //创建文件所在目录

string name = "test2.doc";//文件名
object filename = "D://" + name;  //文件保存路径
 //创建Word文档
Word.Application WordApp = new Word.ApplicationClass();
 Microsoft.Office.Interop.Word.Document WordDoc = WordApp.Documents.Add();

//添加页眉
WordApp.ActiveWindow.View.Type = WdViewType.wdOutlineView;
WordApp.ActiveWindow.View.SeekView = WdSeekView.wdSeekPrimaryHeader;
WordApp.ActiveWindow.ActivePane.Selection.InsertAfter("[页眉内容]");
WordApp.Selection.ParagraphFormat.Alignment = Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphRight;//设置右对齐
WordApp.ActiveWindow.View.SeekView = WdSeekView.wdSeekMainDocument;//跳出页眉设置
WordApp.Selection.ParagraphFormat.LineSpacing = 15f;//设置文档的行间距

 //移动焦点并换行
  object count = 14;
  object WdLine = Word.WdUnits.wdLine;//换一行;
 WordApp.Selection.MoveDown(ref WdLine, ref count);//移动焦点
 WordApp.Selection.TypeParagraph();//插入段落

 //文档中创建表格
 Word.Table newTable = WordDoc.Tables.Add(WordApp.Selection.Range, 12, 3);

//设置表格样式
newTable.Borders.OutsideLineStyle = Word.WdLineStyle.wdLineStyleThickThinLargeGap;
newTable.Borders.InsideLineStyle = Word.WdLineStyle.wdLineStyleSingle;
newTable.Columns[1].Width = 100f;
newTable.Columns[2].Width = 220f;
newTable.Columns[3].Width = 105f;

//填充表格内容
newTable.Cell(1, 1).Range.Text = "产品详细信息表";
newTable.Cell(1, 1).Range.Bold = 2;//设置单元格中字体为粗体

//合并单元格
newTable.Cell(1, 1).Merge(newTable.Cell(1, 3));
WordApp.Selection.Cells.VerticalAlignment = Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中
 WordApp.Selection.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//水平居中

//填充表格内容
newTable.Cell(2, 1).Range.Text = "产品基本信息";
newTable.Cell(2, 1).Range.Font.Color = Word.WdColor.wdColorDarkBlue;//设置单元格内字体颜色

//合并单元格
newTable.Cell(2, 1).Merge(newTable.Cell(2, 3));
WordApp.Selection.Cells.VerticalAlignment = Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;

//填充表格内容
newTable.Cell(3, 1).Range.Text = "品牌名称:";
newTable.Cell(3, 2).Range.Text = "BrandName";

//纵向合并单元格
newTable.Cell(3, 3).Select();//选中一行
object moveUnit = Word.WdUnits.wdLine;
object moveCount = 5;
object moveExtend = Word.WdMovementType.wdExtend;
WordApp.Selection.MoveDown(ref moveUnit, ref moveCount, ref moveExtend);
WordApp.Selection.Cells.Merge();

//插入图片
string FileName = @"C:\Users\jeff\Desktop\a.png";//图片所在路径
object LinkToFile = false;
object SaveWithDocument = true;
object Anchor = WordDoc.Application.Selection.Range;
WordDoc.Application.ActiveDocument.InlineShapes.AddPicture(FileName, ref LinkToFile, ref SaveWithDocument, ref Anchor);
WordDoc.Application.ActiveDocument.InlineShapes[1].Width = 100f;//图片宽度
WordDoc.Application.ActiveDocument.InlineShapes[1].Height = 100f;//图片高度

//将图片设置为四周环绕型
Word.Shape s = WordDoc.Application.ActiveDocument.InlineShapes[1].ConvertToShape();
s.WrapFormat.Type = Word.WdWrapType.wdWrapSquare;
newTable.Cell(12, 1).Range.Text = "产品特殊属性";
newTable.Cell(12, 1).Merge(newTable.Cell(12, 3));

//在表格中增加行
WordDoc.Content.Tables[1].Rows.Add();
WordDoc.Paragraphs.Last.Range.Text = "文档创建时间:" + DateTime.Now.ToString();//“落款”
WordDoc.Paragraphs.Last.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight;

//文件保存
WordDoc.SaveAs(filename);
WordDoc.Close();
WordApp.Quit();
       
string message = name + "文档生成成功,以保存到D:/下";
Response.Write(message);

標籤:

2013年10月15日 星期二

C# 寫入 Excel

.ddl下載:http://epplus.codeplex.com/

//開檔
FileStream fs = new FileStream(@"D:\目標檔案.xlsx", FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
 
//載入Excel檔案
ExcelPackage ep = new ExcelPackage(fs);
ExcelWorksheet sheet = ep.Workbook.Worksheets["Sheet1"];//取得Sheet1
//int startRowNumber = sheet.Dimension.Start.Row;//起始列編號,從1算起
//int endRowNumber = sheet.Dimension.End.Row;//結束列編號,從1算起
//bool isHeader = true;
//if (isHeader)//有包含標題
//{
//startRowNumber += 1;
//}
 
//寫入標題文字
sheet.Cells[1, 11].Value = "緯度";
sheet.Cells[1, 12].Value = "經度";
//for (int i = startRowNumber; i <= endRowNumber; i++)
//{
    //讀值
    //string cellValue = sheet.Cells[i, 1].Value.ToString();
     
    //寫值
    //sheet.Cells[i, 1].Value = cellValue+"test";
     
//}
 
fs.Close();
//建立檔案
fs = new FileStream(@"D:\目標檔案.xlsx", FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite);
ep.SaveAs(fs);//存檔
fs.Close();
//關閉資源
ep.Dispose();
ep = null;

標籤: