GemBox 라이브러리를 사용하여 Excel 형식 변환

2853 단어
다음은 xls를 xlsx로 바꾸는 거예요.
            try
            {
                var dlgOpen = new OpenFileDialog
                {
                    Title = @" Excel",
                    Filter = @" |*.*|Excel (*.xls)|*.xls|Excel2007|*.xlsx|CSV |*.csv"
                };
                if (dlgOpen.ShowDialog() == DialogResult.OK)
                {
                    #region  Excel 

                    using (FileStream fs = File.OpenRead(dlgOpen.FileName))
                    {
                        var extension = Path.GetExtension(dlgOpen.FileName);
                        if (extension != null)
                        {
                              #region Excel2003, GemBox Excel2007
                              long len = fs.Length;
                              byte[] buffer = new byte[len];
                              fs.Read(buffer, 0, (int)len);
                              fs.Close();
                              SpreadsheetInfo.SetLicense("FREE-LIMITED-KEY");
                              var ef = ExcelFile.Load(dlgOpen.FileName);
                              MemoryStream fsNew = new MemoryStream(buffer, true);
                              ef.Save(fsNew, new XlsxSaveOptions());
                              c_reoGridControl.Load(fsNew, FileFormat.Excel2007);
                              #endregion
                        }
                    }
                    #endregion
                    SetColumnStyle();
                }
            }
            catch (Exception ex)
            {
                _errMsg = ex.ToString();
                MsgBox.Error(_errMsg);
            }

GemBox 역시 NuGet으로 얻을 수 있지만, 이것은 비용을 지불하는 dll이지만, 그 무료 기능을 사용할 수 있습니다. 형식 변환에 제한이 없습니다.
SpreadsheetInfo.SetLicense(“FREE-LIMITED-KEY”);

좋은 웹페이지 즐겨찾기