C# 在Excel文件c中打印词典#

C# 在Excel文件c中打印词典#,c#,excel,dictionary,C#,Excel,Dictionary,我有一个名为“DictionnaireFinal”的字典,其中包含关键字的单词和值的定义,我想将其导出到Excel文件中,因此我尝试了以下方法: Microsoft.Office.Interop.Excel.Application oXL = new Microsoft.Office.Interop.Excel.Application(); Workbook wb = oXL.Workbooks.Add(XlSheetType.xlWorksheet); Wor

我有一个名为“DictionnaireFinal”的字典,其中包含关键字的单词和值的定义,我想将其导出到Excel文件中,因此我尝试了以下方法:

 Microsoft.Office.Interop.Excel.Application oXL = new Microsoft.Office.Interop.Excel.Application();
        Workbook wb = oXL.Workbooks.Add(XlSheetType.xlWorksheet);
        Worksheet ws = (Worksheet)oXL.ActiveSheet;


        oXL.Visible = true;

        ws.Cells[1, 1] = "Mot";
        ws.Cells[1, 2] = "Definition";

        for(int i=2; i<= DictionnaireFinal.Count; i++)
        {
            foreach(var b in DictionnaireFinal)
            {
                ws.Cells[i, 1] = b.Key;
            }
        }
        for (int j=2; j<= DictionnaireFinal.Count; j++)
        {
            foreach (var b in DictionnaireFinal)
            {
                ws.Cells[j, 2] = b.Value;
            }
        }
Microsoft.Office.Interop.Excel.Application oXL=new Microsoft.Office.Interop.Excel.Application();
工作簿wb=oXL.Workbooks.Add(XlSheetType.xlWorksheet);
工作表ws=(工作表)oXL.ActiveSheet;
可见=真;
ws.Cells[1,1]=“Mot”;
ws.Cells[1,2]=“定义”;
对于(inti=2;i享受:

使用Microsoft.Office.Interop.Excel;
使用System.Collections.Generic;
类启动
{
静态void Main()
{
应用程序oXL=新应用程序();
工作簿wb=oXL.Workbooks.Add(XlSheetType.xlWorksheet);
工作表ws=(工作表)oXL.ActiveSheet;
Dictionary DictionnaireFinal=新字典();
措辞重新命名。添加(1,“vit”);
措辞重新命名。添加(2,“维多”);
增加第(3)款,“维蒂亚”;
可见=真;
ws.Cells[1,1]=“Mot”;
ws.Cells[1,2]=“定义”;
int i=1;
foreach(DictionnaireFinal中的变量b)
{
i++;
ws.Cells[i,1]=b.Key;
ws.Cells[i,2]=b.值;
}
}
}
这就是你得到的:


您有多个不必要的循环,避免了以下代码行可以正常工作

ws.Cells[1, 1] = "Mot";
ws.Cells[1, 2] = "Definition";

int row = 2;
foreach(DictionaryEntry b in DictionnaireFinal)
{
   ws.Cells[row , 1] = b.Key;
   ws.Cells[row , 2] = b.Value;
   row++;
}

什么是
DictionnaireFinal
?里面有什么?有多少项?for
foreach
有什么用?使用Excel互操作效率低,用户不太友好。最好创建一个可以在Excel中轻松打开的csv文件。DictionnaireFinal是一个存储所有单词的字典(关键字-->字符串)和定义(值-->字符串),项目数取决于找到我的程序的单词数。谢谢它工作谢谢它也工作
ws.Cells[1, 1] = "Mot";
ws.Cells[1, 2] = "Definition";

int row = 2;
foreach(DictionaryEntry b in DictionnaireFinal)
{
   ws.Cells[row , 1] = b.Key;
   ws.Cells[row , 2] = b.Value;
   row++;
}