40 lines
926 B
C#
40 lines
926 B
C#
using System;
|
|
using System.IO;
|
|
using System.Text;
|
|
|
|
namespace CPF.ReoGrid.IO
|
|
{
|
|
internal class ReoGridFileFormatProvider : IFileFormatProvider
|
|
{
|
|
public bool IsValidFormat(string file)
|
|
{
|
|
return Path.GetExtension(file).Equals(".rgf", StringComparison.CurrentCultureIgnoreCase);
|
|
}
|
|
|
|
public void Load(IWorkbook workbook, Stream stream, Encoding encoding, object arg)
|
|
{
|
|
bool flag = workbook.Worksheets.Count == 0;
|
|
Worksheet worksheet;
|
|
if (flag)
|
|
{
|
|
worksheet = workbook.CreateWorksheet("Sheet1");
|
|
workbook.Worksheets.Add(worksheet);
|
|
}
|
|
else
|
|
{
|
|
worksheet = workbook.Worksheets[0];
|
|
}
|
|
worksheet.LoadRGF(stream);
|
|
}
|
|
|
|
public void Save(IWorkbook workbook, Stream stream, Encoding encoding, object arg)
|
|
{
|
|
bool flag = workbook.Worksheets == null || workbook.Worksheets.Count <= 0;
|
|
if (!flag)
|
|
{
|
|
workbook.Worksheets[0].Save(stream, FileFormat.ReoGridFormat);
|
|
}
|
|
}
|
|
}
|
|
}
|