Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/desmond60/watchtable

Library for creating tables
https://github.com/desmond60/watchtable

c-sharp c-sharp-library cs dotnet library table

Last synced: 21 days ago
JSON representation

Library for creating tables

Awesome Lists containing this project

README

        





language


license


standart

version

***

## Содержание
* [Добавление библиотеки в приложение](#add-project)
* [Первый способ](#first-way)
* [Второй способ](#second-way)
* [Третий способ](#third-way)
* [Создание таблицы](#create-table)
* [Запись таблицы в файл TXT](#write-txt)
* [Запись таблицы в файл CSV](#write-csv)
* [Изменение стиля таблицы](#edit-table)

***

## Добавление библиотеки в проект

Добавить библиотеку в проект С# можно двумя способами.

В первом способе вы можете редактировать библиотеку под свой вкус.

Во втором способе такой возможности не будет.

### Первый способ
Добавление проекта библиотеки в ваше приложение.

Отсюда https://github.com/desmond60/WatchTable/releases/tag/v1.0 скачиваем `Source code` или клонируем репозиторий https://github.com/desmond60/WatchTable.git. Путь к проекту библиотеки у меня вглядит следующим образом: `"D:\Program Files\Libraries\WatchTable"`

Далее создадим консольное приложение.
```PS
dotnet new console -o TestingLib
```

Добавим в созданное консольное приложение ссылку на проект библиотеки.
```PS
dotnet add "TestingLib/TestingLib.csproj" reference "D:/Program Files/Libraries/WatchTable/WatchTable.csproj"
```

В `Program.cs` добавим:
```C#
using WatchTable;
```

### Второй способ
Добавление библиотеки (dll) в ваше приложение.

Отсюда https://github.com/desmond60/WatchTable/releases/tag/v1.0 скачиваем `WatchTable.zip`. И кладем dll в проект, например `"lib/WatchTable.dll"`

В файл проекта (.csproj) добавляем следующее:
```XML


lib\WatchTable.dll


```

В `Program.cs` добавим:
```C#
using WatchTable;
```

### Третий способ
Добавление библиотеки через NuGet Gallery.

Здесь можно посмотреть команду https://github.com/desmond60/WatchTable/packages/1733308

***

## Создание таблицы

```C#
// Создание
Table table = new Table("MyTable");

// Добавление названия и ширины столбца
table.AddColumn(
("Number", 6),
("Variable", 15),
("Value", 10)
);

// Добавление строк
float Variable = 1e-15f;
table.AddRow("1", "X", "10");
table.AddRow("1", "Y", "-5");
table.AddRow("1", "Variable", Variable.ToString("E2"));

// Вывод
System.Console.WriteLine(table.ToString());
```

```
+------+---------------+----------+
| MyTable |
+------+---------------+----------+
|Number|Variable |Value |
+------+---------------+----------+
|1 |X |10 |
+------+---------------+----------+
|1 |Y |-5 |
+------+---------------+----------+
|1 |Variable |1,00E-015 |
+------+---------------+----------+
```

***

## Запись таблицы в файл txt

Чтобы записать табличку в текстовый (.txt) файл, используйте функцию:

```C#
table.WriteToFile(@"table.txt");
```

***

## Запись таблицы в файл CSV

Чтобы записать табличку в файл (.csv), нужно установить `Nuget-пакет CsvHelper` и использовать функцию:

```C#
table.WriteToCSV(@"table.csv");
```

***

## Изменение стиля таблицы

Возможно понадобиться изменить кодировку консоли для полноценного вывода.

```C#
Console.OutputEncoding = System.Text.Encoding.UTF8;
```

Чтобы изменить таблицу, используйте свойства:

```C#
table.Corner = "\u2665";
table.Separator = "\u2504";
```

```
♥┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄♥
| MyTable |
♥┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄♥
|Number|Variable |Value |
♥┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄♥
|1 |X |10 |
♥┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄♥
|1 |Y |-5 |
♥┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄♥
|1 |Variable |1,00E-015 |
♥┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄♥┄┄┄┄┄┄┄┄┄┄♥
```

### [Вернуться к содержимому](#content)