用C#编写Excel文件时的奇怪字符

本文关键字:字符 文件 编写 Excel | 更新日期: 2023-09-27 18:27:33

我正试图用C#.net创建一个excel文档。但在我可以正确地将一些值写入单元格后,最后一个单元格出现了奇怪的字符,比如与我从一个简单的txt文件中读取的内容无关:

�����Q%R SI G5oH�g7�j�FnJ�9������RG8��P���K} r����我�������:�+�J�F��]dF��Y���Pd���1.�C�׽OӘ$D0�..r

这是我的excel创建者类:

class CreateExcelDoc
{
    Microsoft.Office.Interop.Excel.Application ExcelUygulama;
    Microsoft.Office.Interop.Excel.Workbook ExcelProje;
    Microsoft.Office.Interop.Excel.Worksheet ExcelSayfa;
    object Missing = System.Reflection.Missing.Value;
    Microsoft.Office.Interop.Excel.Range ExcelRange;

    string s_dosyaadi = "";
    string s_veri = "";
    public CreateExcelDoc()
    {
        ExcelUygulama = new Microsoft.Office.Interop.Excel.Application();
        ExcelProje = ExcelUygulama.Workbooks.Add(Missing);
        ExcelSayfa = (Microsoft.Office.Interop.Excel.Worksheet)ExcelProje.Worksheets.get_Item(1);
        ExcelRange = ExcelSayfa.UsedRange;
        ExcelSayfa = (Microsoft.Office.Interop.Excel.Worksheet)ExcelUygulama.ActiveSheet;
        ExcelUygulama.Visible = false;
        ExcelUygulama.AlertBeforeOverwriting = false;
    }
    public void HucreyeYaz(int row, int col, string s_veri) // write to a cell
    {
        if (s_veri != "" && row != 0 && col != 0)
        {
            Microsoft.Office.Interop.Excel.Range bolge = (Microsoft.Office.Interop.Excel.Range)ExcelSayfa.Cells[row, col];
            bolge.Value2 = s_veri; 

        }
    }
    public void Kaydet() // saves the excel document
    {

            ExcelProje.SaveAs(@"C:'excels'dosya.xlsx", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookDefault, Missing, Missing, false, Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange);
            ExcelProje.Close(true, Missing, Missing);
            ExcelUygulama.Quit();

    }
}

用C#编写Excel文件时的奇怪字符

您可以通过插入数据创建html文档并将其保存为xlsx文件,而不是使用Ms Office库。因为,如果您依赖Ms Office库,则可能必须在运行应用程序的计算机上安装Office。

您可以将excel文件保存为html,也可以从应用程序中修改其内容并将其保存为xlsx文件。