Формат CSV

Загрузка документа в формате CSV

Книга или Лист (Workbook vs. Worksheet)

Как книга (workbook), так и Лист (worksheet) могут загружать данные из файлов формата CSV. Книга загружает содержимое файла формата CSV и удаляет все существующие листы; Лист загружает данные формата CSV лишь внутри себя.

Загрузка CSV в книгу

Для загрузки документа формата CSV в книгу следует использовать метод Load, указав формат файла CSV:

grid.Load("C:\\mypath\\data.csv", IO.FileFormat.CSV);

Загрузка CSV в лист

Для загрузки данных формата CSV в лист, необходимо использовать следующие методы:

// загрузка из потока
sheet.LoadCSV(Stream s);

// загрузка из файла
sheet.LoadCSV(string path);

// загрузка из потока с преобразованием строк с учётом указанной кодировки
sheet.LoadCSV(Stream s, Encoding encoding);

// загрузка из файла с преобразованием строк с учётом указанной кодировки
sheet.LoadCSV(string path, Encoding encoding);

// загрузка из потока с указанием параметров autoSpread, bufferLines и кодировки
sheet.LoadCSV(Stream s, bool autoSpread, int bufferLines, Encoding encoding);

Пример: загружаем файл с использованием японской кодировки “shift-jis”

sheet.LoadCSV(@"G:\ReoGrid\Samples\13TOKYO.CSV",
  Encoding.GetEncoding("shift-jis"));

Пример после загрузки:

142

Auto Spread

По умолчанию ReoGrid будет добавлять строки и столбцы автоматически, расширяя таблицу по мере загрузки данных. Для отключения подобного поведения установите значение аргумента autoSpread в false.

Экспорт в формат CSV

Для сохранения содержимого листа в формате CSV используем следующие методы:

var sheet = grid.CurrentWorksheet;

// экспорт в файл
sheet.ExportAsCSV(string path);

// экспорт в поток
sheet.ExportAsCSV(Stream s);

Экспорт только указанного диапазона

Возможен экспорт указанного диапазона ячеек листа. Для этого используется перегруженный метод ExportAsCSV с указанием фрагмента таблицы или строки.

// экспорт второй строки. Это может пригодиться, если 
// экспортируемый заголовок находится не в первой строке
sheet.ExportAsCSV("C:\\mypath\\file.csv", 1);

// экспорт диапазона
sheet.ExportAsCSV("C:\\mypath\\file.csv", "A1:H30");

Экспорт с указанием кодировки

Если нужно явно указать кодировку текста, используется третий аргумент методов:

sheet.ExportAsCSV("C:\\mypath\\file.csv", "A1:H30", 
  Encoding.GetEncoding("shift-jis"));

Далее: Экспорт в формате HTML