zoukankan      html  css  js  c++  java
  • C#中如何保存文本为Word文件或Excel文件 [Z]

    一,           如何保存文本为Word文件

     

    要在.net中操作Word,就需要在项目中引用Word的对象库文件MSWORD.OLB,这可以在office安装目录下找到(C:\Program Files\Microsoft Office\OFFICE11\MSWORD.OLB,把它引入项目中就可以使用Word对象的各种方法来实现Word软件的功能了。

    06121406.JPG

    核心代码如下:



        private void button1_Click(object sender, System.EventArgs e)
            
    {
                
    if(this.richTextBox1.Text=="")
                    
    return;
                
    if(this.saveFileDialog1.ShowDialog()==DialogResult.Cancel)
                    
    return;
                
    string FileName = this.saveFileDialog1.FileName;
                
    if(FileName.Length<1)
                    
    return;
                FileName
    +=".doc";
                
    try
                
    {
                    Microsoft.Office.Interop.Word.ApplicationClass word 
    = new Microsoft.Office.Interop.Word.ApplicationClass();
                    Microsoft.Office.Interop.Word.Document doc;
                    
    object nothing  = System.Reflection.Missing.Value;
                    doc 
    = word.Documents.Add(ref nothing,ref nothing,ref nothing,ref nothing);
                    doc.Paragraphs.Last.Range.Text 
    = this.richTextBox1.Text;
                    
    object myfileName = FileName;
            
    //将WordDoc文档对象的内容保存为doc文档
                            doc.SaveAs(ref myfileName,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing,ref nothing);
        
    //关闭WordDoc文档对象
                    doc.Close(ref nothing,ref nothing,ref nothing);
    //关闭WordApp组件对象
                    word.Quit(ref nothing,ref nothing,ref nothing);
                    MessageBox.Show(
    "Word文件保存成功","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
                }

                
    catch(System.Exception ex)
                
    {
                    MessageBox.Show(
    this,ex.Message.ToString(),"信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
                }

            }



    二,如何保存为Excel文件

     

    要在.net中操作Excel,就需要在项目中引用EXCEL.EXE这可以在office安装目录下找到(C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE

    Excel对象使用最多的是下面4个:

    Application对象,处于Excel对象层次结构的顶层,表示 Excel自身的运行环境。

    Workbook对象,直接处于Application的下层,表示一个Excel工作簿文件

    Worksheet对象,包含在Workbook对象中,表示一个Excel工作表

    Range对象,包含在Worksheet中,表示Excel工作表中的一个或多个单元格

    06121408.JPG

    核心代码如下:

        private void button1_Click(object sender, System.EventArgs e)
            
    {//保存为Excel文件
                if(this.listView1.Items.Count<1)
                    
    return;
                
    try
                
    {
                    Microsoft.Office.Interop.Excel.ApplicationClass myExcel 
    = new Microsoft.Office.Interop.Excel.ApplicationClass();
                    myExcel.Visible 
    = true;
                    
    if(myExcel==null)
                    
    {
                        MessageBox.Show(
    "Excel无法启动!!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
                        
    return;
                    }

                    Microsoft.Office.Interop.Excel.Workbooks myWorkBooks 
    = myExcel.Workbooks;
                    Microsoft.Office.Interop.Excel.Workbook myWorkBook 
    = myWorkBooks.Add(System.Reflection.Missing.Value);
                    Microsoft.Office.Interop.Excel.Worksheet myWorkSheet 
    = (Microsoft.Office.Interop.Excel.Worksheet)myWorkBook.Worksheets[1];
                    Microsoft.Office.Interop.Excel.Range myRange 
    = myWorkSheet.get_Range("A1","C1");
                    
    object[] myHeader = {"姓名","专业","毕业院校"};
                    myRange.Value2 
    = myHeader;
                    
    if(this.listView1.Items.Count>0)
                    
    {
                        myRange 
    = myWorkSheet.get_Range("A2",System.Reflection.Missing.Value);
                        
    object[,] MyData = new object[this.listView1.Items.Count,3];
                        
    foreach(ListViewItem lvi in this.listView1.Items)
                        
    {
                            MyData[lvi.Index,
    0= lvi.Text;
                            MyData[lvi.Index,
    1= lvi.SubItems[1].Text;

                            MyData[lvi.Index,
    2= lvi.SubItems[2].Text;
                        }

                        myRange 
    = myRange.get_Resize(this.listView1.Items.Count,3);

                        myRange.Value2 
    = MyData;
                        myRange.EntireColumn.AutoFit();

                    }

                    myExcel 
    = null;

                }

                
    catch(System.Exception ex)
                
    {
                    MessageBox.Show(
    this,ex.Message.ToString(),"信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
                }

            }

  • 相关阅读:
    php获取当前月份的前(后)几个月
    javascript实现自动添加文本框功能
    php文件上传系统
    webuploader+文件夹上传
    PHP+实现文件的上传和下载
    java+实现文件的上传和下载
    web文件系统
    php文件夹上传下载控件分享
    asp.net文件夹上传下载控件分享
    java文件夹上传下载控件分享
  • 原文地址:https://www.cnblogs.com/RobotTech/p/1068791.html
Copyright © 2011-2022 走看看